Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/affaan-m/ECC/llms.txt

Use this file to discover all available pages before exploring further.

ECC ships 10 JSON Schema (Draft-07) files that govern every major data structure: from what you install and into which harness, to how sessions are persisted in the SQLite state store and what a valid hook looks like. These schemas live in the schemas/ directory and are used both for validation at install time and as stable contracts for tooling integrations.

ecc-install-config.schema.json

Top-level install configuration schema. Used by ecc install, ecc plan, and programmatic installers.
PropertyTypeRequiredDescription
versioninteger (const: 1)Schema version
targetstring (enum)One of 14 harness IDs
profilestringNamed profile ID (^[a-z0-9-]+$)
modulesarray<string>Explicit module IDs
includearray<string>Component selectors to include
excludearray<string>Component selectors to exclude
optionsobjectFree-form options
Component selector pattern: ^(baseline|lang|framework|capability):[a-z0-9-]+$

install-modules.schema.json

Defines the shape of each installable module entry in manifests/install-modules.json.
PropertyTypeDescription
idstringModule ID — pattern: (baseline|lang|framework|capability|agent|skill|locale):<name>
kindstringOne of: rules, agents, commands, hooks, platform, orchestration, skills, docs
descriptionstringHuman-readable description
pathsarray<string>File/directory paths to install
targetsarray<string>Harness targets this module supports
dependenciesarray<string>Module IDs that must be installed first
defaultInstallbooleanWhether included in the core profile by default
coststringlight, medium, or heavy
stabilitystringexperimental, beta, or stable

install-components.schema.json

Defines logical groupings of modules into named components. Components are what you reference with --include/--exclude.
PropertyTypeDescription
idstringComponent ID — same pattern as module IDs
familystringOne of: baseline, language, framework, capability, agent, skill, locale
descriptionstringHuman-readable description
modulesarray<string>One or more module IDs that make up this component

install-profiles.schema.json

Defines named install profiles.
PropertyTypeDescription
idstringProfile ID — pattern: ^[a-z0-9-]+$
descriptionstringHuman-readable description
modulesarray<string>Ordered list of module IDs

install-state.schema.json

Records the result of an install operation. Schema ID: ecc.install.v1. This is what ecc doctor and ecc repair read to understand what was installed.
FieldTypeDescription
idstringHarness target ID
rootstringAbsolute path to the harness config root
installStatePathstringPath to this install-state file
kindstringhome (user-level) or project (repo-level)
FieldTypeDescription
profilestringProfile name used
modulesarrayExplicit module IDs requested
includearrayComponent selectors included
excludearrayComponent selectors excluded
FieldTypeDescription
selectedModulesarrayModule IDs that were installed
skippedModulesarrayModule IDs that were skipped (e.g., unsupported target)
FieldTypeDescription
repoVersionstringECC version (from package.json)
repoCommitstringGit commit SHA
manifestVersionintegerManifest schema version
Each operation record:
FieldTypeDescription
kindstringOperation type (copy, merge, scaffold)
moduleIdstringSource module
sourcePathstringSource file path in ECC repo
destinationPathstringDestination path in harness root
strategystringConflict resolution strategy
ownershipstringWho owns this file (ecc or user)
scaffoldOnlybooleanIf true, only written on first install

state-store.schema.json

The central ECC state store. Schema ID: ecc.state-store.v1. All tables are arrays of typed records persisted in a SQLite database.
FieldTypeDescription
idstringUnique session ID
adapterIdstringHarness adapter identifier
harnessstringHarness name (e.g., claude, codex)
statestringactive, completed, error
repoRootstringAbsolute path to the project root
startedAtstringISO 8601 start timestamp
endedAtstringISO 8601 end timestamp (null if active)
snapshotobjectBounded context snapshot
FieldTypeDescription
idstringUnique skill run ID
skillIdstringSkill identifier
skillVersionstringSkill version
sessionIdstringParent session ID
taskDescriptionstringDescription of the task executed
outcomestringsuccess, failure, partial
failureReasonstringError message if outcome is failure
tokensUsedintegerApproximate tokens consumed
durationMsintegerWall-clock duration in milliseconds
userFeedbackstringOptional feedback captured at session end
createdAtstringISO 8601 creation timestamp
FieldTypeDescription
skillIdstringSkill identifier
versionstringVersion string
contentHashstringHash of the skill content
amendmentReasonstringWhy this version was created (nullable)
promotedAtstringISO 8601 timestamp when promoted (nullable)
rolledBackAtstringISO 8601 timestamp when rolled back (nullable)
FieldTypeDescription
idstringUnique decision ID
sessionIdstringSession that recorded this decision
titlestringDecision title
rationalestringWhy this decision was made
alternativesarrayOther options considered
supersedesstringID of a prior decision this replaces (nullable)
statusstringactive, superseded, reversed
createdAtstringISO 8601 creation timestamp
FieldTypeDescription
targetIdstringHarness target ID
targetRootstringAbsolute path to the harness config root
profilestringProfile name used (nullable)
modulesarrayModule IDs that were installed
operationsarrayFile operation records
installedAtstringISO 8601 install timestamp
sourceVersionstringECC version at install time (nullable)
FieldTypeDescription
idstringUnique event ID
sessionIdstringAssociated session ID (nullable)
eventTypestringType of governance event
payloadanyEvent payload (JSON value)
resolvedAtstringISO 8601 resolution timestamp (nullable)
resolutionstringResolution description (nullable)
createdAtstringISO 8601 creation timestamp
FieldTypeDescription
idstringUnique work item ID
sourcestringlinear, github, handoff, manual
sourceIdstringExternal ID (e.g., GitHub issue number, nullable)
titlestringWork item title
statusstringCurrent status
prioritystringPriority level (nullable)
urlstringLink to external tracker (nullable)
ownerstringAssignee (nullable)
repoRootstringProject this item belongs to (nullable)
sessionIdstringSession that last touched this item (nullable)
metadataanyArbitrary metadata (JSON value)
createdAtstringISO 8601 creation timestamp
updatedAtstringISO 8601 last-updated timestamp

hooks.schema.json

Defines the structure of Claude Code hook configurations. See the Hooks Reference for full documentation of action types and built-in hooks. Supported events (18 total): SessionStart, UserPromptSubmit, PreToolUse, PermissionRequest, PostToolUse, PostToolUseFailure, Notification, SubagentStart, Stop, SubagentStop, PreCompact, InstructionsLoaded, TeammateIdle, TaskCompleted, ConfigChange, WorktreeCreate, WorktreeRemove, SessionEnd Action types: command (shell), http (HTTP POST), prompt/agent (sub-agent)

plugin.schema.json

Defines the shape of an ECC plugin manifest (used by Codex plugin marketplace installs).
PropertyTypeDescription
namestringPlugin name
versionstringSemver version
descriptionstringHuman-readable description
authorstring|objectAuthor name or {name, url}
homepagestringPlugin homepage URL
repositorystringSource repository URL
licensestringSPDX license identifier
keywordsarray<string>Searchable keywords
skillsarray<string>Skill paths
commandsarray<string>Command paths
mcpServersstring|array|objectMCP server definitions
features.agentsintegerNumber of agent definitions
features.commandsintegerNumber of command definitions
features.skillsintegerNumber of skill definitions
features.configAssetsConfig file assets
features.hookEventsarrayHook event types this plugin uses
features.customToolsarrayCustom tool definitions

package-manager.schema.json

Tracks the user’s preferred package manager for ECC operations.
PropertyTypeDescription
packageManagerstringOne of: npm, pnpm, yarn, bun
setAtstringISO 8601 timestamp when this was set

provenance.schema.json

Metadata attached to learned or imported skills in ~/.claude/skills/learned/ and ~/.claude/skills/imported/.
PropertyTypeDescription
sourcestringOrigin URL, file path, or identifier
created_atstringISO 8601 creation timestamp
confidencenumberScore 0–1 indicating extraction confidence
authorstringWho or what produced the skill

Build docs developers (and LLMs) love