Files
plyngent/doc/architecture.md
T
NCBM b967a000dc docs: document skills
README and the example config cover the [skills] section, the five tools, and
the read/write split; AGENTS.md gains the skills/ package, the tool family, the
config fields, and the /skills + /status surface; architecture.md lists the
package. doc/skills.md is the author guide: layout, the frontmatter subset and
how a broken one degrades, roots and shadowing, what the agent sees, the
grant story for reads and writes, and the warning that a skill is data —
third-party skill directories are untrusted input.
2026-09-22 22:58:09 +08:00

2.3 KiB

Code Architecture

  • plyngent
    • typedef: Shared type aliases.
    • lmproto: Protocols for interacting with LLM service.
      • (common)
        • model: Messages models of specified providers.
        • config: Configurations for specified providers.
        • client: Clients for accessing existent specified services.
        • server: Servers for accepting other clients.
      • openai_compatible: Chat Completions base (kind=chat_completions).
      • openai: Platform Responses + chat (kind=responses).
      • anthropic: Messages API (kind=messages).
      • deepseek
        • openai_compat (kind=chat_completions)
        • responses (kind=responses; DeepSeek Responses API)
        • anthropic (kind=messages; DeepSeek Anthropic-compatible API on https://api.deepseek.com/anthropic)
    • utils: Common utilities for code architecture.
      • components: Utilities for class composition.
    • memory: Storage controlling for sessions and messages.
    • router: Multi-source capability routing (Phase H; not implemented).
    • config: Plyngent configuration center (TOML), including [plugins] and [networking] (e.g. fetch SSRF Fake-IP CIDR exemptions). Model entries may override provider preset / url for mixed API routing. [skills] holds the skill roots, discovery sources, catalog limits, and the standing write grant.
    • runtime: create_client maps effective provider preset → protocol client.
    • skills: Skill discovery (ordered roots, SKILL.md frontmatter subset, mtime-cached store) and the read/write path rules the tools use.
    • agent: Kind-based tool loop, streaming, usage, compact; bridges: responses_bridge/responses_dispatch, messages_bridge/messages_dispatch; @tool / tags / registry. History stays chat-completions-shaped.
    • tools: Workspace file/process/VCS/chat/todo/net/skill tools + directory-access grants (access); catalog; plugins; instance/session context and views.
    • prompting: Shared ask/choose/form for CLI and tools.
    • cli: Click entry, slash registry, REPL, one-shot chat.
    • web: Web service (Phase H; not implemented).

Plugins (third-party entry points, allowlisted under [plugins]): plugins.md.