entangle

A skill for designing several connected parts of a system together, with one shared agreement describing how they exchange data and work together. It assigns a separate worker to each subsystem and revises the agreement until it settles.

In plain words
What is it for?
Use it to co-design two to five coupled parts, such as an application programming interface and its client, from requirements or a design brief.
Why use it?
It reduces the risk that separately designed components will use incompatible interfaces.

Skill for Claude CodeCodex

Part of the agent-workflows plugin — 28 skills, 4 agents, 4 hooks shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/sjarmak/agent-workflows/entangle
Any agent
npx skills add sjarmak/agent-workflows --skill entangle
Clone the repo
git clone --depth 1 https://github.com/sjarmak/agent-workflows

Made for: Claude Code, Codex.

Or install agent-workflows, the plugin that ships this one along with the rest of its 28 skills, 4 agents, 4 hooks.

Per session 0 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,893 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.02893
Opus 5 $0.00000 $0.01447
Sonnet 5 $0.00000 $0.00579
Haiku 4.5 $0.00000 $0.00289

Measured 3d ago against content hash 167dd4115a49, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

entangle scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/entangle/SKILL.md · 309 lines

How it starts

The opening of the file, as written. The whole thing — 309 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Dependent co-design of coupled subsystems. Spawns one agent PER SUBSYSTEM in isolated worktrees, all sharing a single evolving interface contract file. A coordinator merges contract proposals and broadcasts updates. Agents iterate until the contract stabilizes. Produces N co-designed subsystems plus the negotiated contract.

Arguments

$ARGUMENTS — format: [rounds] subsystem1 subsystem2 [subsystem3...] [path/to/requirements.md] where rounds is optional max iteration count (default: 3, min 2, max 5) and subsystems are named components of the coupled system (min 2, max 5)

Parse Arguments

Extract:

  • max_rounds: optional leading integer (default 3, min 2, max 5)
  • subsystems: 2-5 named subsystems (e.g., api client, schema migration query-layer, frontend backend data-model)
  • requirements_path: optional trailing path to a requirements doc, PRD, or design brief

Validate:

  • At least 2 subsystems are provided
  • No more than 5 subsystems
  • Subsystem names are distinct

Phase 1: Define the Contract

If a requirements path is provided: read it and extract the interfaces, data flows, and coupling points between the named subsystems.

If no requirements path: ask the user to describe:

  • What does each subsystem do?
  • How do the subsystems communicate? (API calls, shared database, message queue, function calls, etc.)
  • What are the hard constraints? (tech stack, protocols, existing code)
  • What is the desired end state?

From this, draft the initial contract file — a structured document that defines the interface between all subsystems. The contract format:

# Interface Contract v0

## Status: DRAFT

## Subsystems

- {subsystem_1}: {one-line purpose}
- {subsystem_2}: {one-line purpose}
  ...

## Shared Types

{Data types, schemas, or models that cross subsystem boundaries}

## Interfaces

### {subsystem_1} -> {subsystem_2}

- Endpoint/method: ...
- Input: ...
- Output: ...
- Error cases: ...

### {subsystem_2} -> {subsystem_1}

- Endpoint/method: ...
- Input: ...
- Output: ...
- Error cases: ...

{Repeat for every directional interface between subsystems}

## Constraints

- {Protocol, format, auth, versioning, or other cross-cutting rules}

## Open Questions

- {Unresolved interface decisions}

Read the full file on GitHub · 309 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 309 lines · 0 tokens per session scan A 167dd4115a49

Subscribe to this mod's changes

entangle is a skill published in the GitHub repository sjarmak/agent-workflows (9 stars, last pushed 1mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 2,893 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

speckit.specify

Skill "speckit.specify" from caipe-io/ai-platform-engineering, covering user input, outline, quick guidelines, section requirements and for ai generation.

caipe-io/ai-platform-engineering · 0 tokens

speckit.clarify

Skill "speckit.clarify" from caipe-io/ai-platform-engineering, covering user input and outline.

caipe-io/ai-platform-engineering · 0 tokens

local-integration-testing

Run end-to-end integration tests with all 15 agents and supervisor in local Docker Compose dev environment. Validates agent discovery, multi-agent routing, checkpoint persistence, and cross-agent follow-up conversations.

caipe-io/ai-platform-engineering · 44 tokens

release-docs

Generate a combined release blog post for ai-platform-engineering. Produces a single docs/releases/YYYY-MM-DD-release-X-Y-Z.md file containing release notes and the upgrade guide (migration guide) inline. Use when cutting a release, when a user asks "what changed in 0.4.x", or when upgrading their values.yaml to a new…

caipe-io/ai-platform-engineering · 76 tokens

update-docs

Audit and update all documentation moving parts for ai-platform-engineering. Checks release blog posts, features page, agent docs, homepage version strings, Docusaurus version config, and sidebar completeness. Fixes what is stale and reports what needs manual attention. Use after cutting a release, adding a new agent…

caipe-io/ai-platform-engineering · 70 tokens

docker-compose-first-install

Validate and repair the OSS first-install Docker Compose path. Use when editing docker-compose.yaml, docker-compose.dev.yaml, .env.example, release image tags, Compose profiles, Keycloak/OpenFGA/RAG defaults, or first-launch UI behavior for local all-in-one installs.

caipe-io/ai-platform-engineering · 60 tokens