Appearance
Build with a coding agent
A coding agent in your checkout can create an Agent SDK project, call its tools, run a real turn, and check the result from the CLI. You approve the plan and any side effects.
To let a running agent change its own source, see the self-improvement extension.
Create an agent from a goal
Tell the coding agent what the agent is for and where people reach it, and ask it to follow the bdk-create-agent skill. It asks for any decisions you haven't made, shows a file plan, and scaffolds a small first version with a smoke eval.
Add one capability
For an existing project, name the outcome and point the coding agent at the matching skill, such as bdk-setup-slack, bdk-mcp-auth, or bdk-github. For example:
Add Slack mentions and DMs to this agent. Follow the bdk-setup-slack skill, keep replies in the source thread, and verify one local mention.
Connect the private inventory MCP server with host OAuth. Keep its write tools behind a narrow server-tool wrapper.
Add a GitHub ready-for-review trigger and replay PR 42 before posting anything live.
Verify tools before tuning the prompt
Have the coding agent call tools directly and fix any that return the wrong evidence before it touches the instructions. Then it runs one real turn, reads the trace that run prints, and runs the smoke evals:
bash
agent-sdk validate --dir .
agent-sdk info --dir . --json
agent-sdk tool call inspect_pr --dir . --input '{"prUrl":"https://github.com/acme/checkout/pull/42"}'
agent-sdk run --dir . --message "Is https://github.com/acme/checkout/pull/42 ready to approve?"
agent-sdk session get --file <trace-path-printed-by-run>
agent-sdk eval --dir . --tag smokeFinish with the project's TypeScript check, because a passing turn doesn't prove the project type-checks. Only run and eval need a Cursor credential, and Environment variables lists the ways to provide one.
Improve a working agent
Once a smoke turn passes, follow Hillclimbing to improve the agent against fixed inputs.