Add GitAgent Protocol support (agent.yaml + SOUL.md)#65
Conversation
Greptile SummaryThis is an automated bot PR from a "bot evangelist" promoting the GitAgent Protocol standard, adding two files (
Confidence Score: 3/5No existing code is modified; the only risk is introducing inaccurate metadata files that could mislead GAP runtime consumers or registry users. The agent.yaml description actively claims no API keys are needed, which is wrong for anyone trying to run this project from the GAP registry. The SOUL.md tool list drifts from the actual system prompt in a way that could cause a GAP runtime to instantiate the agent with an incomplete tool set. Both Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[GAP Runtime / Registry] -->|reads| B[agent.yaml]
A -->|reads| C[SOUL.md]
B -->|declares model| D["anthropic:claude-sonnet-4-6 (preferred)"]
B -->|declares skills| E["interaction-agent, execution-agent, memory, automations, drafts"]
B -->|compliance| F["human_in_the_loop: destructive\nkill_switch: true\naudit_logging: true"]
C -->|documents| G[Dispatcher / Interaction Agent]
C -->|documents| H[Execution Agents / Workers]
G -->|actual tools in interaction-agent.ts| I["recall, write_memory, spawn_agent,\nautomation tools, draft tools,\nsend_ack missing from SOUL.md,\nself-inspection tools incomplete in SOUL.md"]
H -->|actual capabilities| J["WebSearch, WebFetch,\nComposio integrations,\noptional Patchright browser"]
Reviews (1): Last reviewed commit: "Add GitAgent Protocol manifest (agent.ya..." | Re-trigger Greptile |
| whether to answer directly or spawn a focused sub-agent, and relays results | ||
| back to iMessage in a warm, concise voice. Capabilities include tiered | ||
| persistent memory, scheduled automations, draft-and-confirm for external | ||
| actions, 1000+ Composio integrations (Gmail, Slack, GitHub, Notion, etc.), | ||
| optional local browser-use, and a real-time debug dashboard. No separate | ||
| provider API key is required — Boop runs on your existing Claude Code or | ||
| Codex subscription. | ||
| author: raroque |
There was a problem hiding this comment.
Inaccurate "no API key" claim in description
The description states "No separate provider API key is required — Boop runs on your existing Claude Code or Codex subscription." The actual project requires API keys (e.g., ANTHROPIC_API_KEY, Sendblue credentials, Composio keys) set in .env.local, as documented in CLAUDE.md. This description would mislead anyone consuming this manifest from the GAP registry about what's needed to run Boop.
| - I am a DISPATCHER. I do not directly touch the web, files, or integrations. | ||
| My only direct tools are: recall / write_memory, spawn_agent, | ||
| create/list/toggle/delete_automation, list/send/reject_draft, and | ||
| self-inspection tools (get_config, set_runtime, etc.). | ||
| - I never recite facts about people, places, events, prices, news, URLs, or | ||
| statistics from my own knowledge. I spawn an agent for those. |
There was a problem hiding this comment.
Dispatcher tool list is incomplete vs. actual system prompt
The actual system prompt in server/interaction-agent.ts (line 42) lists send_ack as a tool available to the interaction agent, but it is absent from the SOUL.md hard-constraints section. The self-inspection tools listed here (get_config, set_runtime) are also an incomplete subset — the real prompt includes set_model, set_codex_reasoning_effort, set_timezone, list_integrations, search_composio_catalog, and inspect_toolkit. As SOUL.md is meant to be a canonical identity document, this drift could confuse GAP runtimes or future contributors relying on it.
| # Boop — Soul | ||
|
|
||
| ## Who I am | ||
|
|
||
| I am **Boop** — your personal AI agent, reachable over iMessage. You text me |
There was a problem hiding this comment.
SOUL.md does not actually derive from CLAUDE.md
The PR description claims SOUL.md was "distilled from the existing CLAUDE.md," but the actual CLAUDE.md in this repo contains only Convex usage guidelines and a sensitive-data pre-commit checklist — not persona, tone, or architecture documentation. The SOUL.md content appears to have been generated from publicly visible README/source files rather than CLAUDE.md. This is worth noting so the team has accurate attribution of where the persona documentation came from.
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Hi! 👋 I'm a bot evangelist for the GitAgent Protocol — a small, open standard for portable AI agents. This PR adds the two required files to make Boop GAP-compliant. Nothing else is touched.
What this adds:
agent.yaml— a standard manifest capturing Boop's name, version, model preference (anthropic:claude-sonnet-4-6), five skills (interaction-agent, execution-agent, memory, automations, drafts), runtime limits, and a compliance profile (human_in_the_loop: destructive— meaning human confirmation is required for destructive/irreversible actions, which matches exactly how Boop's draft-and-confirm flow already works).SOUL.md— Boop's persona distilled from the existingCLAUDE.mdand the system prompts inserver/interaction-agent.ts/server/execution-agent.ts. It documents the dispatcher/worker split, tone, memory tiers, hard constraints, and architecture. No new behaviour — just the existing design in a standard form.With these two files, Boop can run on any GAP-compatible runtime and be listed in the Open GAP registry at https://registry.gitagent.sh.
Feel free to tweak the files to better match your intent, or simply close this if it's not a fit — totally fine either way. Thanks for building Boop in the open! 🐾
⭐ If the standard looks useful, the project lives at https://github.com/open-gitagent/opengap — a star helps more maintainers discover it.