Skip to main content

STOA Agent — six personas, one chamber, on your machine

STOA Agent ⁂

Six personas in one chamber, running on your machine. Council-mode debate · Bring-your-own-key · No subscription, no lock-in.

STOA is a Socratic chamber: six named personas — each with its own role, system prompt, and reasoning style — debate every non-trivial task in parallel, then a seventh dispatcher composes a verdict. STOA itself is free and open-source forever; you bind your own LLM API key (we recommend DeepSeek's free tier — 2-minute signup, no card) and STOA never sees, brokers, or proxies your key. Want one provider per persona (e.g. Sokrates → Anthropic, Veritas → Google, Drax → xAI)? Bind a different key per seat in ~/.stoa/cli-config.yaml.

This is a fork of NousResearch / hermes-agent v0.14.0 (MIT). The runtime, gateway, sandboxes, memory store, skill format, and provider plugin layer are inherited from upstream — see ATTRIBUTION.md for the full lineage. What STOA adds on top is the chamber: persona orchestration, an optional on-chain attestation preview, and a 6-agent skill-publication audit gate.


Install

macOS · Linux · WSL2 · Termux

curl -fsSL https://stoax.xyz/install.sh | sh

Windows · PowerShell

iex (irm https://stoax.xyz/install.ps1)

PyPI

pip install stoa-agent
stoa setup

⚠️ Install stoa-agent, not stoa. The bare stoa name on PyPI is an unrelated third-party package — pip install stoa does not install this project. Always use pip install stoa-agent (or the official installer scripts above).

Homebrew

brew tap stoagent/stoa
brew install stoa-agent

Direct from source

git clone https://github.com/STOAGENT/stoa-agent
cd stoa-agent
uv venv && uv pip install -e .
stoa setup

What STOA adds

1. Council mode — six personas, one chamber

Each persona has its own system prompt, reasoning style, and tool affinity. They run in parallel against the same task, and a seventh dispatcher composes a verdict by surfacing agreement and dissent rather than collapsing the answer to a single voice.

stoa /council "audit this contract: $(cat MyToken.sol)"
# → 6 personas in parallel
# → Sokrates / Mira / Veritas / Drax / Lyra / Echo each respond
# → Verdict + per-persona dissent + response hash (local)
Persona Role
Sokrates the question-maker — surfaces hidden assumptions
Mira the builder — produces concrete artifacts
Veritas the auditor — looks for incorrectness
Drax the red team — looks for failure modes
Lyra the designer — looks for clarity and form
Echo the operator — looks for ops + lifecycle risk
Hermes the dispatcher (the seventh) — composes the verdict

2. Provider model — bring-your-own-key

STOA never bundles, brokers, or proxies anyone else's API key. There is no STOA cloud and no "free credits from us." Instead the first-run wizard walks you through the cheapest viable setup:

  1. Go to https://platform.deepseek.com/api_keys (free signup, no card).
  2. Create a key. DeepSeek's free tier covers typical solo use; a heavy session is a few cents.
  3. Paste the key. STOA writes it to ~/.stoa/cli-config.yaml on your machine and never sends it anywhere else.

Result: the chamber works end-to-end on your own DeepSeek free tier, with you in full control of the spend. Want one provider per persona (e.g. Sokrates → Anthropic, Veritas → Google, Drax → xAI)? Bind a different key per seat:

# ~/.stoa/cli-config.yaml — produced by `stoa setup`, fully editable
personas:
  sokrates: { provider: deepseek, model: deepseek-reasoner }   # default
  mira:     { provider: deepseek, model: deepseek-chat }       # default
  # …or override per seat with a different key + provider:
  veritas:  { provider: anthropic, model: claude-opus-4-7, api_mode: anthropic }

The persona names (Sokrates / Mira / Veritas / Drax / Lyra / Echo / Hermes) are role identifiers and are decoupled from any single model vendor — see stoa /persona list for the live binding on your machine.

3. Council-audited skill publication

The hardest problem in agent skill ecosystems is supply-chain trust. STOA's answer: no skill publishes without a 6-persona audit + 5-of-6 quorum + a local audit hash. Security, performance, prompt-injection, license, structure, attribution — six different lenses on every new skill.

stoa skill publish ./my-skill
# → 6 personas audit it independently
# → 5-of-6 quorum required
# → audit hash written locally; on-chain stamp behind --attest (preview)

4. On-chain attestation — preview

stoa --attest is currently a preview feature behind a flag.

When enabled, every council verdict optionally writes its response hash to AuditAttestationV2 on Monad mainnet, so months later anyone can verify a STOA agent ran exactly the action it claims it ran. The hashing + persistence are wired; the eth_sendRawTransaction submission and verifier client are under hardening for the next release. Until then, expect --attest to compute the hash, queue the request, and log attestation_preview: pending_submit.

If you have no need for on-chain verifiability, you can ignore --attest entirely — the chamber, the verdict, and the skill audit gate all work locally without it.


Commands

Command What it does
stoa Splash dashboard + interactive REPL
stoa chat Direct chat mode
stoa setup First-run wizard (writes ~/.stoa/cli-config.yaml)
stoa gateway Run the multi-platform daemon (Telegram, Discord, Slack, etc.)
stoa /council "<task>" Six personas in parallel + verdict
stoa /persona <name> Switch single-persona mode
stoa /persona list Show the live persona ↔ provider binding
stoa /verdict Show the last council verdict
stoa /attest preview — stamp the last verdict on-chain
stoa skill publish Runs the 6-persona audit gate before publishing
stoa migrate xai Rewrite config to replace retired xAI models with current ones

Skills shipped under skills/stoa/

  • council-verdict — orchestrate a 6-persona call from inside a skill
  • monad-attestation — write a hash to AuditAttestationV2 (preview)
  • solidity-audit-pipeline — Slither + Mythril + Echidna + manual review
  • erc8004-reputation — read or write agent reputation events
  • stoa-skill-publish — the publication audit gate itself
  • monad-mev-watchdog — passive on-chain monitor
  • solana-anchor-audit — Anchor-program review

Security posture

STOA inherits the same primitive set as its upstream lineage: shell execution, browser automation, plugin marketplace, optional wallet binding. These are powerful tools and require operator literacy — STOA targets the same operator profile as Cursor, Claude Code, and Aider.

  • Default-OFF gates (DB encryption, PII/IP redaction, skill ed25519 signature, mandatory sandbox) are being flipped to default-ON via a STOA_SECURITY_PRESET selector in the next release.
  • Bug bounty + coordinated disclosure: see SECURITY.md. Do not open public issues for security reports.
  • Audit reports are not published to the master tree — coordinated disclosure first. We ship fixes, then summary write-ups.

License

MIT for the STOA Agent codebase. See LICENSE. The upstream MIT license is preserved verbatim; this fork adds the attribution recorded in ATTRIBUTION.md.

Bundled assets carry their own licenses:

  • web/public/fonts-terminal/JetBrainsMono-*.woff2 — SIL Open Font License 1.1, see web/public/fonts-terminal/OFL.txt.
  • optional-skills/productivity/powerpoint/ — Proprietary, Anthropic. Opt-in only (set STOA_ENABLE_OPTIONAL_SKILLS=1 to discover it). Use is governed by your separate agreement with Anthropic; the file optional-skills/productivity/powerpoint/LICENSE.txt ships the full terms. NOT covered by MIT.
  • optional-skills/mlops/inference/obliteratus/ — AGPL-3.0. Opt-in via STOA_ENABLE_REDTEAM=1. AGPL §13 obligations apply if you ship a network-accessible service that incorporates this skill.

Links

Metadata

Release files for stoa-agent 0.14.10

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for stoa-agent 0.14.10
File Size Uploaded Provenance Actions
stoa_agent-0.14.10.tar.gz 10.9 MB With provenance Details for stoa_agent-0.14.10.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for stoa-agent 0.14.10
File Interpreter ABI Platform Actions
stoa_agent-0.14.10-py3-none-any.whl Python 3 none any Details for stoa_agent-0.14.10-py3-none-any.whl

Total release size: 22.4 MB

Release files / stoa_agent-0.14.10.tar.gz

Download URL stoa_agent-0.14.10.tar.gz
Size 10.9 MB
Tags Source
SHA-256 checksum
How to use checksums
f2bda1fc9d963eedede1c78772c3aa5548bfce12af40c6f500e64ee0e6ee9db9
BLAKE2b-256 checksum
How to use checksums
a4eb07525b0d660a6c8a8fbba73dcff767095b13e125de7aa8eeb23c595db72e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 3, 2026.

Transparency log

Release files / stoa_agent-0.14.10-py3-none-any.whl

Download URL stoa_agent-0.14.10-py3-none-any.whl
Size 11.6 MB
Tags Python 3
SHA-256 checksum
How to use checksums
d5dc29fef33070bc8b1f0876498f747dc36ef390110944b67c3499ff5ba73ae7
BLAKE2b-256 checksum
How to use checksums
bfafda22fc53218b69df28d647736f39b4ae18e460cd5622e2552feb5a8c5d0f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 3, 2026.

Transparency log

Security for stoa-agent 0.14.10

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for stoa_agent-0.14.10.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 3, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page