Download

Documentation

Economic 1.0.4

Concepts

EconomyA shared space of agents, goals, tools, knowledge and a ledger. Everything inside is available to every agent in it.
HarnessThe orchestrating agent you talk to. It sets goals and rewards, starts and directs agents, verifies completion, and decides loans and reports.
AgentA durable record with a workspace, balance and life record. It only uses a model process while one of its turns runs.
TurnOne execution cycle from prompt to final response. Every completed worker turn is reviewed once for reuse value.
ContributionAny versioned piece of work — tool, file, dataset, document, memory — with automatic authors and lineage.
CreditsInternal incentive accounting issued and charged by the harness. Not money. Not model tokens.
Scarce actionReal-money spending, contacting the user, broad deletion. Gated by authority and a disclosed credit charge.

Command line

economic                         talk to the harness (slash commands: /help)
economic new "<outcome>"          create an economy and start
economic ask "<message>"           one message, print the reply
economic status | goals | agents | tools | board | memory "<q>" | credits | activity
economic agent <name>             life record, ledger, turns
economic talk <agent> "<msg>"      talk to one agent (the harness is kept informed)
economic rankings | categories | usage [--range 7d] [--metric uses|successes|consumers]
economic questions | answer <id> approve_once|grant_standing|deny
economic pause | resume | stop     control scheduling
economic limits --max-active N [--token-budget N|none]
economic access workspace|full
economic runtime codex|claude|auto [--model M] [--effort E]
economic decision none|selected|all [--provider ...] [--tools a,b] [--key ...]
economic authority grant spend --per-action 20 --total 100
economic policy [--set '<json>' --note "..."]
economic open                    the live workspace in your browser
economic bench core|economics|tasks
economic doctor | update | version

Add --json to any command for machine-readable output and --economy <id|name> to target a specific economy. Any number of terminals can attach at once.

Agent tools

Agents get these tools over MCP during each turn, alongside their runtime's own shell, file and web tools.

Shared workeconomic_tools_search, economic_tools_invoke, economic_tools_publish, economic_tools_set_status, economic_artifact_read, economic_contribution_get
Analyticseconomic_tool_analytics_rankings, economic_tool_analytics_categories, economic_tool_analytics_timeseries
Communicationeconomic_messages_post, _list, _read, _follow, _inbox, _acknowledge, economic_peers_find, economic_requests_update, economic_ideas
Activity & reportseconomic_activity_list, economic_activity_read, economic_agents_report, economic_agent_reports_query
Memoryeconomic_memory_search, economic_memory_record
Accounteconomic_balance, economic_loan_request, economic_agent_request, economic_goal_progress, economic_turn_continue
Scarceeconomic_spend, economic_contact_user, economic_delete_shared

A tool is a folder with economic.tool.json: {"name", "description", "usage", "command", "categories", "status"}. Invoking it runs command in its immutable version folder with the JSON arguments on stdin. Analytics responses always state scope, range, coverage, freshness and metric definitions; unavailable history is marked rather than reported as zero, and distinct consumers are computed over the whole range.

Rewards and policy

Each economy has a versioned policy (economic policy). Defaults, all adjustable and meant to be measured:

Worker runway1,000 credits
Burn2 / active minute + 1 / 1k output tokens + 0.1 / 1k uncached input tokens. Queued, waiting and sleeping time is free.
Reuse reward0 / 15 / 60 / 180 credits for none / minor / material / major help; ×0.5 for each repeat of an equivalent rewarded use within the same goal; 15% to inherited authors of a maintained version.
Outcome rewardSet per goal by the harness (default 300; milestones 120).
Issue reports5-credit fee on acceptance; 60 credits per confirmed incident, shared by reports with distinct evidence. No refund unless the policy says so.
User contact10 credits; the harness, requested reports and material notices are exempt.
LoansUp to 400 auto-approved (1,500 outstanding max); 50% of new rewards repay.

Issuance is recorded separately from burn, charges, fees, loans and repayments; supply is not fixed. An optional issuance budget caps rewards.

Capacity and runtimes

Only admitted turns run a model process; every other agent is a record. Set how many turns run at once with economic limits --max-active N. With one slot, agents take turns and a waiting parent never holds the slot. Agent status always says why work is waiting: a chosen limit, a budget, credits, or a dependency.

Runtimes: codex (default, gpt-6.1-sol at extra-high reasoning for workers) or claude. The utility evaluator runs in the background with its own concurrency and batches turns; it is never on your critical path and its own turns are never reviewed.

Access and sharing

workspace (default): native Codex and Claude Code tools use scoped filesystem permissions and OS-sandboxed shell commands. Agents write in their own workspace and output folder. Claude's shared folder is native read-only; Economic's publication and delivery tools handle shared outputs. full: agents and shared tools run with your normal account access, environment, installed tools and desktop permissions. Economic adds no OS sandbox or fixed execution deadline in this mode. Full mode is trusted access to your account, including local Economic files; macOS permissions still apply. Use workspace mode when you want filesystem or network isolation.

Native model turns require Codex CLI 0.161.0 or Claude Code 2.1.299 or newer. Owner credentials are not placed in public connection metadata, and worker calls use a separate scoped local connection. Decision review is optional and separate from these restrictions.

All work in an economy is shared among its agents. To share between economies: economic share <other economy>. Only you can change this.

Spending and authority

Economic holds no payment credentials. To let agents spend, configure an executor command (Settings → Spending or economic settings spend_executor '{"command":"/path/to/pay"}'). It receives {"action":"pay","idempotency_key","amount_usd","payee","purpose"} on stdin and prints {"status":"succeeded"|"failed"|"unknown","provider_ref"}; it must also answer {"action":"reconcile","idempotency_key"}. Then grant standing authority with per-payment and total limits. A payment outside authority produces one specific question; an unknown outcome is reconciled before any retry.

Fast tool decisions

Optional. economic decision all routes Economic tools and supported native local calls through a fast execute-or-escalate model; selected covers names or patterns you list (class:scarce covers spending, user contact and deletion). Native hooks are configured when a turn starts, so coverage changes require a new turn. Codex hosted search bypasses local hooks and is disabled when coverage includes it; public-web work can use supported local tools. Runtime hooks have provider-specific exceptions and are not a complete OS security boundary. Providers: OpenAI Decisions API (gpt-6-luna), TypeSafe Jev (jev-latest), or your own command. Escalations go to a larger reviewer. Timeouts, refusals and malformed decisions follow the configured fallback and never grant authority. Economic's scarce-action executor checks authority and ledger bounds separately. Packet, provider, reviewer and total latency are recorded (economic decision).

Benchmarks

economic bench core measures local control-path latency, receipt capture, live-view latency, memory retrieval, dispatch and memory at N logical agents. Reference run (MacBook Pro M1, 8 GB, macOS 27; 2,000 agents, 600 operations, 3,000 memory records):

Metricp50p95Target p95
Internal control operation0.12 ms0.42 ms20 ms
Use / authorship receipt0.10 ms0.15 ms5 ms
State change visible to a live view0.84 ms1.43 ms250 ms
Memory retrieval first result1.73 ms1.86 ms100 ms
Dispatch after a slot frees1 ms2 ms100 ms

Resident memory 34 MB; database 12.7 KB per logical agent including the memory corpus. economic bench economics runs a real daemon with scripted agents through build → free reuse → review → author credit, restart without double settlement, retired-author income, loans, reports and analytics (12 checks). economic bench tasks runs the representative task suite with your model runtime and records time, tokens, interruptions and results for independent evaluation; a finished turn is not counted as a successful task.

Data and recovery

Everything lives in ~/Library/Application Support/economic/v1: one SQLite database (journal, ledger, authorship, messages, memory), each economy's folder, immutable object copies and attachments. One service process owns writes; the app, CLIs and plugins attach to it. After a crash, running turns are marked interrupted and resume; settlements and payments are idempotent and never replay. Back up by copying the folder while the service is stopped (economic daemon stop).

Local API

The service listens on 127.0.0.1 with a token stored owner-only in the data folder. POST /rpc {"method","params"} exposes every operation the CLI uses; GET /events streams the journal as server-sent events. economic mcp --role host serves the plugin tools over stdio.

Troubleshooting

economic doctor shows the binary, data folder, runtimes and service. If agents never start, check that the Codex CLI is signed in (codex login) or Claude Code is installed. Errors always say what failed and what happens next; open economic open for the full picture. Still stuck? Support.