Skip to content

AnshulaChowdhury/curia

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3,124 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Curia

An open-source Digital Office of the CEO — communications, scheduling, research, and knowledge work with governance-first architecture.

Version: 0.36.0 Status: Pre-Alpha License: MIT Node >= 24 TypeScript ESM OpenSSF Scorecard OpenSSF Best Practices

Website · Documentation · Contributing · Security


What Is Curia?

CEOs of knowledge-work companies are buried in digital operations — email, scheduling, research, information processing. The traditional answer is an executive assistant, but the cycle is brutal: hire, invest six months training, watch the institutional knowledge walk out the door when they leave.

Curia is a coordinator and team of specialist agents that handle your communications, scheduling, research, and knowledge work — running continuously on your own server, with institutional memory that compounds over time and never walks out the door. Define agents in YAML, extend with custom skills, connect any channel.

Every action is logged. Every decision is traceable. Every agent stays in its lane.

Typical Agent Framework Curia
Security model "Trust the agent" Hard-enforced layer separation — channel adapters physically cannot invoke tools
Self-modification Agents can edit their own prompts, tools, and code at runtime Agents cannot modify themselves — new skills, agents, and prompts always require human approval
Audit trail Console.log Append-only Postgres with causal tracing across every event
Institutional memory Conversation history + flat files (lost or stale across restarts) Knowledge graph + entity memory + temporal decay (survives restarts, ages gracefully)
Error handling Retry and hope Error budgets, state continuity, pattern detection — agents resume, not restart
Agent coordination Agents work in isolation The Bullpen — structured, auditable, threaded inter-agent discussions
Multi-channel Many channels, often without consistent security boundaries Email, Signal, CLI, HTTP API — every channel shares the same security model and audit trail
Autonomy All or nothing Five configurable bands — from advisory-only to fully independent, with intent drift detection

Architecture

Five layers connected by a message bus — four domain layers with hard security boundaries, plus a System layer for trusted cross-cutting infrastructure. No layer can call another directly. Every event is audited.

Curia Architecture — 5 layers connected by message bus

Full architecture guide →


What It Looks Like

Agents are defined in YAML. No code required for simple agents:

name: expense-tracker
description: Tracks and categorizes expenses from receipts and emails

system_prompt: |
  You are an expense tracking assistant for a CEO.
  Extract amounts, vendors, categories, and dates from receipts.

pinned_skills:
  - email-parser
  - spreadsheet-writer

memory:
  scopes: [expenses, vendors, budgets]

schedule:
  - cron: "0 9 * * 1"
    task: "Generate weekly expense summary"

error_budget:
  max_turns: 20
  max_cost_usd: 1.00

Need custom logic? Add a TypeScript handler — same config, plus hooks for onTask, onSkillResult, and beforeRespond.

Skills come in two flavours (local handlers and MCP servers) behind a single interface. Agents discover new skills automatically; sensitive skills require your approval on first use.

Agents → · Skills → · Channels → · Security →


Quickstart

Prerequisites: Docker, Node >= 24, pnpm, and an Anthropic API key.

git clone https://github.com/josephfung/curia.git
cd curia
pnpm run setup

Curia will be running at http://localhost:3000. The setup script prints your bootstrap secret — save it to a password manager and use it on the login page to create your account.

→ Full installation guide
(channels, production deploy, configuration reference)


Contributing

Curia is in early development and welcomes contributions — including AI-assisted ones.

  • Read the Contributing Guide for dev setup, code standards, and how to add channels, skills, and agents
  • Read CLAUDE.md for repo-level conventions (if you're using Claude Code, these load automatically)
  • Check open issues — look for good first issue labels
  • Report security vulnerabilities via SECURITY.md — not public issues

We evaluate code quality, not authorship. AI-generated contributions are held to the same review standards as human-written code. See the AI contributions policy for details.


License

MIT

About

An open-source Digital Office of the CEO. Communications, scheduling, research, and knowledge work with governance-first architecture.

Resources

License

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 98.2%
  • CSS 0.8%
  • Shell 0.5%
  • Dockerfile 0.2%
  • PLpgSQL 0.1%
  • JavaScript 0.1%
  • Other 0.1%