Alfred documentation

Alfred offers Workspace, Memory, and Agent Harness. Start with one capability, or configure explicit connections between them.

What is Alfred?

Workspace provides projects, conversations, files, terminals, and local tools. Memory provides persistent knowledge through a local service. Agent Harness operates agents, skills, policies, profiles, and integration with external coding harnesses.

Each capability has its own lifecycle and state. The shared CLI composes commands; selecting multiple capabilities does not connect their services or credentials. Agent Harness retains its harness-agnostic core and adapters, while Workspace and Memory own separate domains.

New here? Read Product capabilities, then Install Alfred. Workspace is available in source and require a release after 1.1.0; source changes do not update an installed package.

Pick a path

I just want to install it

Install the versioned package from the public Homebrew tap, or use the existing curl | sh bootstrap. No manual git clone. The installer detects your active harness, generates a preview, and waits for human approval before writing harness config.

Read the install guide →

I want to configure my workspace

The guided installer previews project config while leaving model assignment to runtime or standalone reconfiguration. It never creates or modifies ~/.alfred/models.json. From there you can set permission policy and skills for Agent Harness, or configure tenants when using Memory. Workspace state and runtime connections remain separate.

See the configuration reference →

I want to understand the architecture

Hexagonal architecture + DDD. The core never imports an adapter. Adapters never redefine domain rules. The boundary is enforced by the build itself.

Read the architecture overview →

I want to set up evals & baselines

Every agent, skill, and policy change must run an eval suite and compare against a baseline. Improvements are accepted on numbers.

Set up your first eval →

Three principles, in order

  1. Local-first. If deterministic local work can solve it, a provider is never called. Avoided calls are traced too.
  2. Deny by default. No agent may broaden its own permissions. Escalation is a human decision, recorded as a trace event.
  3. Evals gate everything. No prompt, agent, skill, or policy change ships without a regression-safe eval pass.

Where to go next