Agent skill
edictum-oss
Implement features in the Edictum OSS core (src/edictum/). Use when the task touches pipeline, adapters, YAML engine, CLI, audit, envelope, or session. Core NEVER imports from ee/.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/edictum-oss
SKILL.md
Edictum OSS Core Implementation
Read CLAUDE.md first. Understand the tier boundary before writing code.
Scope
Everything under src/edictum/ is OSS core (MIT). This includes:
- Pipeline (
pipeline.py) — GovernancePipeline, PreDecision, PostDecision - Envelope (
envelope.py) — ToolEnvelope, Principal, create_envelope() - Contracts (
contracts.py) — @precondition, @postcondition, @session_contract, Verdict - YAML engine (
yaml_engine/) — loader, evaluator, compiler, templates - Adapters (
adapters/) — all 6 framework adapters - Audit (
audit.py) — AuditEvent, StdoutAuditSink, FileAuditSink, RedactionPolicy - Session (
session.py) — Session, MemoryBackend - CLI (
cli/) — validate, check, diff, replay, test - Telemetry (
telemetry.py) — OTel spans, GovernanceTelemetry - Protocols (
pii.py) — PIIDetector protocol, PIIMatch dataclass (interface only)
The ONE RULE
Core code NEVER imports from ee/. If you need functionality from ee/, define a protocol/interface in core and let ee/ implement it.
Workflow
- Read CLAUDE.md — understand boundaries and dropped features
- Read the Linear ticket or user description
- Read relevant source files before proposing changes
- Scope with user — confirm approach before writing code
- Implement — small, focused changes
- Behavior test — every new/changed API parameter gets a test in
tests/test_behavior/test_{module}_behavior.py - Docs-code sync —
pytest tests/test_docs_sync.py -v - Adapter parity — if touching adapters:
pytest tests/test_adapter_parity.py -v - Test —
pytest tests/ -vthenruff check src/ tests/ - Commit — conventional commits, no Co-Authored-By
Conventions
- Frozen dataclasses for immutable data
- All pipeline/session/audit methods are async
from __future__ import annotationsin every file- Type hints everywhere
- Test file per module:
tests/test_{module}.py
Do NOT
- Import from
ee/— core is self-contained - Implement Redis/DB StorageBackend — dropped feature
- Implement PII detection backends in core — those go in ee/
- Add Webhook/Splunk/Datadog sinks to core — those go in ee/
- Accept a parameter without testing its observable effect — if it's accepted, it must DO something testable
- Document a feature that doesn't exist in code —
pytest tests/test_docs_sync.py -vcatches this - Ship an adapter change without running parity checks —
pytest tests/test_adapter_parity.py -v
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?