Template
The template carried the old multi-tool/agentsquad-era CAD-executor scaffold. Refresh it to the consolidated single-harness reality (hyperguild#75/#76): Claude Code + hyperguild, session-based, brain + gitea MCP. No dispatch automation added (out of scope — dispatch stays manual until real friction warrants it). Removed (multi-tool + dead generator + deployed-agent-era): - .aider.conf.yml, .aider.conventions.md, .cursorrules - .context/ (mcp.json, PROJECT.md, system-prompt.txt) - agent-policy.yaml (k8s NetworkPolicy scaffold) - scripts/context-sync.sh (generated the above from .context/PROJECT.md — now input-less) + its context:sync* Taskfile tasks Added / updated: - .mcp.json (root, hyperguild-shaped: brain + gitea, Bearer env tokens) - CLAUDE.md / AGENTS.md / README.md → single-harness workflow (issue → hyperguild session → PR → report-back comment → brain capture) - AGENT_BOUNDARIES.md kept (harness-agnostic egress/scope guidance); repointed its two references to the removed agent-policy.yaml Left alone: cd.yml, Dockerfile, Taskfile (build/test), go.mod, cmd/, internal/, pkg/, .claude/. No dangling refs to removed files (verified). Refs infra#178. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1.9 KiB
1.9 KiB
PROJECT_NAME — agent context
Standalone context for agents that read AGENTS.md from the repo root. Claude Code uses
CLAUDE.md (and tree-walks to ~/dev/CLAUDE.md); this file mirrors the same essentials for
any other harness.
Project
- Name: PROJECT_NAME — a Go agent (ADK + LiteLLM).
- Owner: Mathias · Client: personal · Repo: git.d-ma.be/mathias/PROJECT_NAME
Harness
Single harness: Claude Code + hyperguild — session-based (start a session, it works, it
stops). There is no push-triggered dispatch, listener, or scheduled poller, and none should
be added without a fresh, friction-driven decision. MCP connections in .mcp.json:
- brain (
brain-mcp.d-ma.be) — knowledge query/write.BRAIN_MCP_TOKEN. - gitea (
git-mcp.d-ma.be) — issues/PRs/repo, the audit trail.GITEA_MCP_TOKEN.
Workflow
- Issue — work is scoped as a Gitea issue (acceptance criteria + report-back format).
- Session — a Claude Code + hyperguild session does the work in this repo.
- PR — branch off
main; open a PR; CI (task check) is the gate. - Report-back — comment the outcome on the issue (issue comments are the audit surface).
- Brain capture — persist durable, non-obvious learnings to the brain.
Conventions
- Go: standard tooling;
task check(lint + vet +go test -race) before every PR. - Errors wrapped (
fmt.Errorf("...: %w", err)); structuredslog. - Trunk-based: commit to
mainvia PR; one logical change per commit; CI is the quality gate. - Secrets via env (
BRAIN_MCP_TOKEN,GITEA_MCP_TOKEN,LITELLM_API_KEY); never in code.
Boundaries
Runtime scope (network egress allow-list, file scope, approved operations, failure posture) is
in AGENT_BOUNDARIES.md. Read it before adding tools, endpoints, or write access.
Observability
Traces → Jaeger via OTLP_ENDPOINT; ADK_SERVICE_NAME=__PROJECT_NAME__. Spans: invoke_agent,
generate_content.