diff options
| author | t <t@tjp.lol> | 2026-07-04 08:46:35 -0600 |
|---|---|---|
| committer | t <t@tjp.lol> | 2026-07-04 09:01:25 -0600 |
| commit | 1ed07e2e4473b91c669c062bbfef6bb499f7d2b7 (patch) | |
| tree | 5c4d6161e164681fa5ac1a242a5dcfaa1bc120dd /AGENTS.md | |
| parent | 3ad5d90d0de2bfca6ef17b10202df070e660e3c3 (diff) | |
docs: todos, new "tui gaps" project, AGENTS.md modification
Diffstat (limited to 'AGENTS.md')
| -rw-r--r-- | AGENTS.md | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -1,5 +1,15 @@ # pantograph +## What this is and isn't + +- `libpanto/` is a pure agent SDK in Zig. Its bindings are idiomatic libraries in their language, not thin FFI wrappers. +- `panto` (CLI, `src/`) is an interactive agent SDK in the spirit of pi (https://pi.dev), not a full-featured agent. Its job isn't to do everything; it's to make everything possible — users build their own ideal agent on the Lua extensions API. Sparse built-ins are by design. Judge a feature first as "should the extension API make this buildable?", only then "core?" +- panto is not a coding tool: even the shipped coding tools (`agent/tools/*.lua`) are deny-able Lua extensions, and an extended panto should handle jobs that aren't coding at all. Coding-flavored features go out-of-tree (`../panto-agent`, the `agent.*` batteries rock), never in core. +- Server mode (near-term) is the same extension surface as a daemon proxying real inference — one proxy for all subscriptions, value-add Lua behaviors (custom routing, injected skills) server-side — not a separate product. +- New extension/API surfaces are co-designed with Travis before building, never shipped speculatively. + +## Conventions + Acronyms in CamelCase are fully capitalized: `APIStyle`, `HTTPClient`, `IDLookup`. Field names are snake_case: `api_style`, `base_url`, `model`. DO NOT read `mise.local.toml`, that contains API keys which we don't want exposed to LLM providers. |
