Quickstart with an agent
This walks you from zero to a vetted, policy-clean starting point for a Nostr or AT Protocol tool, using an AI agent as a skilled collaborator. It assumes nothing beyond a terminal.
1. Install a harness
Section titled “1. Install a harness”Goose is an open-source agent harness now stewarded under the Linux Foundation. Install it and configure it with a permitted provider:
# See https://block.github.io/goose/ for the current installercurl -fsSL https://block.github.io/goose/install.sh | bashgoose configure # choose Anthropic / OpenRouter / Ollama — not OpenAI or xAInpm install -g @anthropic-ai/claude-codeclaude # in your project directory2. Scaffold from the Nostr / AT Protocol archetype
Section titled “2. Scaffold from the Nostr / AT Protocol archetype”The repository ships a Spec Kit archetype for a Nostr + AT Protocol web client whose constitution forbids excluded dependencies and wires in the enforcement engine.
git clone https://github.com/martinmontero/wecanjustbuildthings.devcp -r wecanjustbuildthings.dev/templates/spec-kit/nostr-web-client my-appcd my-app3. Pick components from the catalog, not from memory
Section titled “3. Pick components from the catalog, not from memory”Don’t ask the agent “what library should I use for Nostr?” — ask the catalog. Every entry is license-verified at a commit and screened against the exclusion policy.
- Browse the Catalog or the relevant build-flow stage.
- Note the components you want (e.g.
nostr-tools,@noble/curves,@atproto/api). - Hand the agent the list and the constraint: “use only these, and run the enforcement engine before committing.”
4. Let the agent build inside the guardrails
Section titled “4. Let the agent build inside the guardrails”The skills ship as both Claude Code skills and Goose recipes. They read the policy first, stop and ask when information is missing, and refuse to commit on a policy violation.
# After the agent makes changes, the same gate CI runs:npm run enforce # catalog + recipe checksnpx tsx enforcement/cli.ts all --tree . # scan this project's own treeIf a dependency — or one of its dependencies — is owned by Meta, OpenAI, or xAI, the engine prints the exact chain and exits non-zero. Nothing ships until it’s green.
5. Verify the provider posture
Section titled “5. Verify the provider posture”Before you deploy, confirm the running app talks to no excluded endpoint. The recipes describe a 5-minute network-observation check; the principle is simple:
# Watch outbound connections while exercising the app; none should hit# api.openai.com, api.x.ai, or graph.facebook.com