My Projects
AEGIS
An opinionated, hardened Claude Code environment that extends the harness rather than replacing it: curated skills, always-on rules, quality-enforcing hooks, MCP servers, durable cross-session memory, and an installed quality toolchain, with deliberate model, effort, and permission defaults. It rides on Claude Code's native dynamic-workflow orchestration and supplies the reliability and standards layer around it. Parts of it are extracted, generalized, and published in the Claude Code Artifacts library.
Details & related links
Overview
AEGIS stands for Agentic Environment for Guaranteed Implementation Standards. The name is literal: in Greek mythology, the aegis is Zeus's protective shield, and this environment plays that role for software built with agents. It guards code quality and the integrity of every agent handoff while keeping the development experience fast and fluent. I run it as my daily production environment for multi-agent work with Claude Code.
AEGIS does not replace, fork, or own the agent loop. Claude Code is the harness: it owns the tools, the context management, the execution, and the native dynamic workflows that spawn and coordinate ephemeral subagents. AEGIS supplies the layer around that loop: curated skills, always-on rules, quality-enforcing hooks, MCP servers, durable cross-session memory, an installed quality toolchain, and deliberate model, effort, and permission defaults, all declared in one environment configuration and delivered by one command.
The Problem
Claude Code makes it easy to add a skill, a hook, an MCP server, or a rule. A coherent environment is a different thing: a set of artifacts designed together, trusting each other, and holding every agent to one standard. Native dynamic workflows now cover the hard part of multi-agent coordination, because the loop, the branching, and the intermediate results live outside the model. Coordination and reliability are different properties, though. Reliability lives in what every agent in a workflow shares: the skills, the rules, the hooks, the memory, and the defaults.
An unattended setup drifts. Hooks overlap or contradict each other. Skills recommend an approach the hooks forbid. Handoff contracts weaken, and context degrades at every hop. Tooling differs between machines, so a check that passes on one developer's setup does nothing on another's, and nothing reports the difference. Each piece looks fine in isolation while the composition fails. Much of what gets called an LLM reliability problem is an environment-design problem: nothing in the system is responsible for the system as a whole.
The Solution
AEGIS makes that responsibility concrete. It is a complete, declarative Claude Code environment that hardens the default setup and rides on the native dynamic workflows:
- Curated skills codify the protocols every agent shares: context retrieval and preservation, work management, per-language development standards, git discipline, semantic code navigation, whole-codebase impact analysis, documentation-source routing, and more. Each agent in a workflow reaches for the same vetted approach instead of improvising. The catalog combines protocol skills I wrote with curated third-party sets, and the environment raises Claude Code's skill-listing budget so agents see what each skill does rather than a list of bare names.
- Always-on rules bind every session to the same standards: scope and boundary discipline, fidelity of work and reporting, text conventions, and the meta-principles that decide how instructions, discovered defects, and evidence get handled.
- Quality-enforcing hooks keep those contracts at runtime, from language-aware checks on every edit to gates that stop a forbidden operation before it lands. The next section describes how far this goes.
- MCP servers connect the environment to durable memory, semantic code navigation, whole-codebase impact analysis, live documentation, and everyday operational services, with MCP Context Server as the cross-session memory substrate that lets handoffs and long-running work survive context boundaries.
- A quality toolchain (ruff, mypy, pyright, ty, Playwright, markdownlint, and the GitHub and GitLab CLIs) installs with the environment, so every agent reaches the same tooling bar on every machine, alongside deliberate model, effort, and permission defaults.
What Hardening Means in Practice
Enforcement runs in tiers. After every edit, language-aware hooks run the full linter and type-checker stack for Python or TypeScript and hand the findings straight back to the agent that made the change. Before an operation lands, denying gates stop what should never happen: attempts to bypass the quality tooling, writes to protected configuration, prohibited command forms, a commit message that breaks the convention, a Python file named against the naming rules. Where no fixed rule can express the judgment, a model makes the call: one gate runs a single-turn LLM evaluation over a narrow class of tool calls, steering symbol-definition searches toward semantic navigation while letting every ambiguous case through.
The permission posture follows from that layer. AEGIS switches Claude Code's permission prompts off and earns the freedom it grants: the denying hooks run in every permission mode, and declarative deny rules keep credential files and bypass commands out of reach no matter what else is allowed. The safety net is the enforcement layer, not the prompt.
Context gets treated as a deliverable of its own. A hook captures every user prompt verbatim into durable memory at submission, every subagent receives a retrieve-first, store-before-stop protocol the moment it spawns, and recovery guidance loads at session start so work survives context compaction. Session identity, timezone, and project context reach every agent as injected facts where it would otherwise guess.
The operational side aims for determinism. Hook launches resolve their dependencies from pinned lockfiles, so the same event fires the same way on every machine and every run. Setup is idempotent: re-running the one install command moves the whole environment forward in place. The setup also handles platform quirks where they occur, down to operating-system fixes for shell startup and for updating tools whose binaries a live session holds open.
The configuration itself reads like an engineering log. Nearly every default carries the reason it is set and the behavior I verified against the shipped Claude Code binary, with the observation dated, so the environment can be audited line by line and any future change starts from evidence. Two smaller pieces round it out: a status line that surfaces context health inside the session, and desktop notifications when a session needs a human.
How It's Used
AEGIS installs as a single declarative YAML environment configuration through Claude Code Toolbox. One command sets up Claude Code, the quality toolchain, the MCP servers, and every skill, rule, hook, and default the environment declares; re-running the same command updates everything in place.
It installs as the everyday default environment, so its standards apply to normal work instead of a walled-off profile someone has to opt into. Session state persists across context windows through MCP Context Server, the durable memory the agents rely on for handoffs and long-running work. That memory is what makes deterministic native workflows trustworthy when a task outlives a single context window.
Design Philosophy
One conviction drives the design: a multi-agent system's reliability lives in the composition, the shared environment, and in no single piece. The right place for AEGIS is therefore on top of Claude Code's native loop and native dynamic workflows. Claude Code already does orchestration well; rebuilding it would duplicate the harness and add fragility, so AEGIS ships no orchestrator of its own and no fixed roster of specialized agents.
AEGIS is not a harness, and it is not meant to become one. A harness owns the agent loop: the tools, the context management, the execution environment, the verification. AEGIS owns the configuration layer: skills, hooks, rules, MCP servers, durable memory, quality gates, and defaults. It composes with the Claude Code harness and depends on it, the same way it depends on Claude Code Toolbox to deliver it and MCP Context Server to remember for it.
Skills formalize the shared contracts. Hooks enforce them at runtime. Rules and defaults set the bar, and durable memory carries context across sessions and handoffs. Every part reinforces the others, and that mutual reinforcement is what "Guaranteed Implementation Standards" means.
What Reaches the Public Library
Parts of AEGIS become public. When an artifact proves itself in daily use, I extract it, strip what was specific to my own setup, give every configuration option a working default, and rewrite its documentation to stand alone. The result lands in Claude Code Artifacts, my open library of drop-in Claude Code extensions, where anyone can install it with one command. The published version is the version AEGIS runs, which keeps the generalization real: an artifact with a hidden dependency on its home environment would break for me first.
That flow is ongoing. Skills, hooks, and rules keep graduating from AEGIS into the library as they clear that bar, so the library is the public face of this work, and following it is the way to watch AEGIS evolve.
My Role
I design, build, and maintain AEGIS end-to-end: the protocol skills and the skill selection, every rule, every hook and its configuration, the MCP server set, the quality-toolchain integration, and the environment configuration that ties them together. AEGIS also ties my other projects into one working stack: MCP Context Server remembers for it, Claude Code Toolbox delivers it, and Claude Code Artifacts publishes the parts of it that generalize.
If you are hardening a Claude Code environment of your own and want to compare notes, reach out through the contact page.
