Usage¶
Using the full-stack agent¶
Single task, debugging¶
For development, debugging/interactive:
$: python dev/test_agent.py "your task" # one task, in the terminal
Programmatically¶
i.e., to connect to other agents or systems
Import the agent and give it a task. The thread_id
names the conversation, which the agent continues when you give it the same name
again:
# python
from atomatic.harness.agent import create_atomatic_agent
agent = create_atomatic_agent()
result = agent.invoke(
{"messages": [{"role": "user", "content": "your task"}]},
config={"configurable": {"thread_id": "my-campaign"}},
)
print(result["messages"][-1].content)
create_atomatic_agent can be used as a subagent of other langchain-based agents
(such as deepagents); it should be passed in at the creation of your agent
graph.
Changing the agent: CONFIG holds everything the agent is built from, so
edit (such as adding external mcp tools) by overriding one key:
# python
from deepagents import create_deep_agent
from atomatic.harness.agent import CONFIG
config = CONFIG | {"tools": CONFIG["tools"] + my_mcp_tools}
agent = create_deep_agent(**config)
Override model, system_prompt, skills, backend, or checkpointer the
same way.
Interactively¶
You can connect this agent to any deepagents-compatible GUI, such as forumai-gui.
For convenience, you can use a customized version of the langgraph server
which works out of the box with atomatic. See dev.md.
Using your own harness¶
Skills¶
Drop atomatic/skills into your directory of choice inside your project:
.agents/skills: universal.opencode/skills: Opencode.claude/skills: Claude code
These can be in your home directory (making them universal) or project directory (project specific). We strongly recommend using the tools alongside the skills; the skills reference the tools.
Tools¶
The tools run as one MCP server over stdio, for any harness which reads MCP,
callable via the command atomatic-mcp (from within installed venv).
Claude Code, via command:
$: claude mcp add atomatic --scope project -- /path/to/venv/bin/atomatic-mcp
or in .mcp.json in your project (or ~/.claude.json for every project):
{
"mcpServers": {
"atomatic": {
"command": "/path/to/venv/bin/atomatic-mcp"
}
}
}
Opencode, via command:
$: opencode mcp add
or in your global/local opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"atomatic": {
"type": "local",
"command": [
"/path/to/venv/bin/atomatic-mcp"
],
"enabled": true
}
}
}