A Sentō agent is a Claude Code process with shell access. That means everything the sento CLI can do, the agent can do on itself. You just message it.

How it works

When you run sento init, the installer writes a CLAUDE.md identity file in the agent's workspace. That file includes a "Self-administration" section that authorizes the agent to:

  • Run any sento subcommand (status, restart, config, channels, skills, logs, update, doctor)
  • Read and edit its own config files (.env, access.json, start-agent.sh)
  • Modify its own crontab
  • Install new skills from the marketplace or from a path
  • Run system commands directly via bash (with auto-approve for file ops, git, and local commands; user-approval for external APIs)

Examples

you: restart yourself
agent: on it. [runs sento restart, comes back in tmux, sends ✅]
you: add telegram as a second channel. bot token: 123456789:ABC...
agent: adding telegram. one sec.
       [runs sento channels add telegram, writes the .env file, restarts]
agent: ✓ telegram is online. say hi from telegram to test.
you: check your health and fix anything broken
agent: [runs sento doctor --fix]
agent: found 2 issues, fixed both — cron entry was duplicated and
       discord patch needed reapplying. all checks pass now.

What's auto-approved vs what needs user approval

Auto-approved by default:

  • File reads and writes in ~/workspace/ and ~/.claude/
  • Local sento, npm, bun, git, tmux, cron commands
  • Web searches
  • Code edits in the agent's own workspace

Requires explicit user confirmation:

  • External API calls (Zoho, Google Ads, Resend, Vercel, Stripe, etc.)
  • Anything touching paid services
  • Destructive git commands (force push, hard reset)
  • Anything writing outside the agent's workspace

The CLAUDE.md identity file is the source of truth for which rules apply. You can edit it to tighten or loosen what the agent can do on its own.

Why this matters

Most "self-managing" AI systems need a control plane: a web dashboard, a management server, an API layer. Sentō doesn't. The agent has a shell and the docs for its own CLI. That's enough.

This is also why adding a new capability is usually "write a skill" not "update the framework." Skills are Markdown. The agent reads the Markdown and does the thing.

Where to edit rules

  • ~/workspace/CLAUDE.md — identity, authorities, rules (what it can and can't do)
  • ~/workspace/memory/feedback_*.md — behaviors you've told it to stop doing
  • ~/workspace/memory/user_*.md — your preferences it should respect

All plain text. The agent reads them on every turn.