Agent Tools
The agent has access to built-in tools from the Claude Agent SDK plus 20 custom tools provided by Starpod.
Built-in Tools
These come from the agent-sdk and provide core capabilities:
| Tool | Description |
|---|---|
Read | Read a file from disk |
Write | Write content to a file |
Edit | Make targeted edits to a file |
Bash | Execute shell commands |
Glob | Find files by pattern |
Grep | Search file contents with regex |
WebSearch | Search the web |
WebFetch | Fetch a URL |
The Bash tool supports run_in_background: true for long-running processes (servers, watchers, etc.) that shouldn't block the agent.
Custom Tools
Memory
| Tool | Input | Description |
|---|---|---|
MemorySearch | query, limit | Full-text search across all memory files |
MemoryWrite | file, content | Write or update a memory/knowledge file |
MemoryAppendDaily | text | Append to today's daily log |
Environment
| Tool | Input | Description |
|---|---|---|
EnvGet | key | Look up an environment variable by key |
Files
| Tool | Input | Description |
|---|---|---|
FileRead | path | Read a file from the agent's filesystem sandbox |
FileWrite | path, content | Write a file to the agent's filesystem sandbox |
FileList | path (optional) | List files and directories in the sandbox |
FileDelete | path | Delete a file from the sandbox |
Skills
| Tool | Input | Description |
|---|---|---|
SkillActivate | name | Load a skill's full instructions into context |
SkillCreate | name, description, body | Create a new AgentSkills-compatible skill |
SkillUpdate | name, description, body | Update an existing skill's description and instructions |
SkillDelete | name | Delete a skill |
SkillList | — | List all active skills |
Scheduling
| Tool | Input | Description |
|---|---|---|
CronAdd | name, prompt, schedule, delete_after_run, max_retries, timeout_secs, session_mode | Create a scheduled job |
CronList | — | List all jobs with next run times |
CronRemove | name | Remove a job |
CronRuns | name, limit | View execution history |
CronRun | name | Immediately execute a cron job (manual trigger) |
CronUpdate | name, prompt, enabled, max_retries, timeout_secs, session_mode | Update properties of an existing job |
Heartbeat
| Tool | Input | Description |
|---|---|---|
HeartbeatWake | mode ("now" or "next"), message | Wake the heartbeat system outside its normal cycle |
CronAdd Schedule Format
The schedule parameter accepts three formats:
json
{
"kind": "interval",
"every_ms": 3600000
}json
{
"kind": "cron",
"expr": "0 0 9 * * MON-FRI"
}json
{
"kind": "one_shot",
"at": "2026-03-14T15:00:00Z"
}Tool Execution
The agent-sdk drives the agentic loop:
- Claude receives the system prompt + conversation history
- Claude decides to call one or more tools
- The SDK executes the tools and feeds results back to Claude
- Claude decides whether to call more tools or respond
- Repeats up to
max_turns(default: 30)
Custom tools are handled by an external tool handler registered on the Options builder. When Claude calls a tool, the handler checks if it matches a custom tool name. If it does, the handler executes it and returns the result. Otherwise, the SDK's built-in handler runs it.