Portable AI Agent Procedures with Open Skills
Nate B Jonesgo watch the original →
the gist
Stop relying on tool-specific system prompts that drift and break. Use Open Skills to package procedures as portable, version-controlled markdown files that define triggers, boundaries, and verification standards across any AI agent harness.
The Procedural Debt Problem
AI agents are currently plagued by procedural debt, where users must manually re-explain workflows, testing standards, and definitions of done every time they switch tools like Cursor, Claude Code, or Codex. This manifests as prompt bloat, where massive system prompts fight for attention, and instruction fragmentation, where rules drift across different repositories and chat sessions. The current reliance on tool-specific configurations creates vendor lock-in and prevents the compounding of knowledge.
Open Skills as Portable Primitives
Open Skills moves beyond simple prompt engineering by treating procedures as modular, agent-readable primitives. Each skill is a self-contained directory containing a skill.markdown file that defines the following:
- Trigger: When the agent should invoke the skill.
- Boundary: What the skill owns and what it should avoid.
- Tools/Files: Required dependencies for execution.
- Output Format: The expected structure of the result.
- Verification: A strict definition of done that requires evidence (e.g., console logs, screenshots, or live URL checks) rather than relying on the model's self-reported confidence.
Composition and Flywheels
Skills are designed to be composed into runbooks, which are sequences of skills that produce reliable outcomes. For example, a creator workflow might chain a transcription skill, a brain-dump processing skill, an artifact builder, and a publishing skill. To prevent knowledge loss, the system includes a sessiontoskill_extractor skill that analyzes completed agent sessions to identify recurring, non-obvious procedures worth codifying into the library. This creates a flywheel where repeated work is systematically converted into reusable assets rather than disappearing into chat history.