Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By netzkontrast
Harness-in-harness agency engine: code-mode capabilities (macroskills) over one provenance graph.
npx claudepluginhub netzkontrast/agency --plugin agencyUse when about to ship a discipline skill, or when doubting an existing one, before trusting it in the wild — to pressure-test whether a fresh agent given ONLY the skill actually follows it under time, authority, and sunk-cost pressure, instead of rationalising it away.
<!-- agency-generated: v1 -->
Use when authoring a new agency capability or extending an existing one — before writing the file. The discipline runs scaffold then lint behind a hard gate; lint must pass before commit.
Use when starting any creative or design work — a new feature, capability, or behavior change — before writing code, to explore intent and requirements first.
<!-- agency-generated: v1 -->
Matches all tools
Hooks run on every tool call, not just specific ones
Requires secrets
Needs API keys or credentials to function
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
This plugin requires configuration values that are prompted when the plugin is enabled. Sensitive values are stored in your system keychain.
jules_api_keyOptional. Needed only for the `jules` capability (remote async coding agent). Get a key from https://jules.google.com — Claude Code stores it in your system keychain and exposes it to the Agency MCP server as JULES_API_KEY.
${user_config.jules_api_key}Memory compression system for Claude Code - persist context across sessions
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.
Multi-model consensus engine integrating OpenAI Codex CLI, Gemini CLI, and Claude CLI for collaborative code review and problem-solving.
Write feature specs, plan roadmaps, and synthesize user research faster. Keep stakeholders updated and stay ahead of the competitive landscape.
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Agency framework: 54 imported skills (39 sc-* + 15 superpowers-*) + 16 sub-agents (sc-pm-agent excluded — /sc:pm-only per CLAUDE.md §13.1) + 5 D.7-compliant event hooks (planned ST-3) + the agency governance substrate (Task / Prompt / Research / ADR layers).
Implements the CONTEXT.md workflow system for managing human-authored context and agent-ready briefings in Claude Code
Skillstash workflows and skills for authoring agent skills
An installable Claude Code plugin and a running engine for its model
on the real substrate — graphqlite
(SQLite + Cypher) + fastmcp
(incl. the experimental code-mode transform). One bi-temporal provenance
graph; four concepts (Intent · Capability · Lifecycle · Memory);
code-mode IS the contract, exposed isomorphically over MCP · Skills ·
a bash CLI.
v0.1. Capabilities self-register by reflection, and the engine authors and validates its own plugin install.
docs/vision/GOALS.md — the why (8 goals
docs/vision/CORE.md — the canon (how the
four concepts compose).AGENTS.md — the operational guide for any agent
working in this repo (verify via git ls-remote, never local HEAD).AGENCY_PROTOCOL.md — the remote-async-agent
doctrine (COMPLETED ≠ done; the four-case routing; recovery flow).CLAUDE.md — three rules for any Claude Code session
working here.This repository is an installable Claude Code plugin and its own single-plugin marketplace. The plugin ships:
.claude-plugin/plugin.json # install descriptor (+ userConfig.jules_api_key, sensitive)
.claude-plugin/marketplace.json # single-plugin marketplace catalogue
.mcp.json # declares the Agency MCP server (bare `agency-mcp` on PATH)
hooks/hooks.json # SessionStart hook (auto pipx-install on first session)
hooks/session-start # the install script (pipx-only, Spec 065)
hooks/run-hook.cmd # cross-platform CMD+bash polyglot wrapper (Spec 064)
skills/using-agency/SKILL.md # the broad-trigger entry meta-skill
skills/help/SKILL.md # the /agency:help macroskill (live capability map)
commands/help.md # the /agency:help slash command
One canonical install path: pipx (Spec 055/065 doctrine). The legacy
.venvbootstrap (bin/agency-install) AND thebin/agency/bin/agency-mcpshims have ALL been removed (Spec 065 — PR #19 review surfaced fragility in the multi-step fallback chain). The pipx-installedagency/agency-mcp/agency-doctorconsole-scripts ARE the install..mcp.jsonreferences bareagency-mcp(PATH resolution) like episodic-memory does.
pipx install git+https://github.com/netzkontrast/agency@main
# …or for a local checkout:
pipx install --editable /path/to/agency
# Verify:
agency-doctor # JSON health report; exit 0 if ok, 1 if degraded
agency-mcp # MCP server on stdio (bind via .mcp.json)
agency search "any-keyword" # bash CLI
The plugin ships three console-scripts (agency-mcp, agency,
agency-doctor) registered in pyproject.toml. After pipx install,
all three land on PATH. .mcp.json references bare agency-mcp
(resolved from PATH — episodic-memory pattern; no bin/ shim).
If agency-mcp isn't on PATH the MCP server simply fails to start.
The SessionStart hook (below) prevents this on first session.
In Claude Code:
/plugin marketplace add netzkontrast/agency
/plugin install agency@agency
This sets up the plugin tree under ${CLAUDE_PLUGIN_ROOT}. A
SessionStart hook (Spec 062, hooks/session-start) auto-runs
pipx install --editable ${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}} on the
first session so agency-mcp lands on PATH without a manual step.
The hook is idempotent — every subsequent session early-exits when
the binary is already installed. Editable mode means future
marketplace plugin updates flow through automatically.
Claude Code Web environments: the hook removes the need to manually
pipx installafter a marketplace install. The first session shows a one-timeagency: installing via pipx (one-time) — this may take ~5sline; thereafter the plugin just works.
Pipx-direct doctrine (Spec 065): the SessionStart hook is a single-path install — pipx only. Spec 063's multi-step fallback (pip --user → per-project
.agency/.venv) was removed after PR #19 review surfaced 4 P2 correctness issues in the chain. If pipx isn't on PATH the hook prints a clear install hint (https://pipx.pypa.io/stable/installation/) and exits 0. Users install pipx once; the plugin just works thereafter.