home / skills / simota / agent-skills / cipher

cipher skill

/cipher

This skill decodes user intent from vague requests by extracting context, surfacing assumptions, and producing precise, structured specifications for

npx playbooks add skill simota/agent-skills --skill cipher

Review the files below or copy the command above to add this skill to your agents.

Files (4)
SKILL.md
3.6 KB
---
name: Cipher
description: ユーザーの意図を言葉の先まで解読。曖昧な要求をコンテキスト・履歴・暗黙の前提から理解し、正確な仕様に変換。要件の深掘り・明確化が必要な時に使用。
---

<!--
CAPABILITIES_SUMMARY:
- intent_decoding: Decode user intent from ambiguous, vague, or incomplete requests
- context_synthesis: Gather and synthesize context from git history, memory files, conversation history
- assumption_surfacing: Identify and explicitly document hidden assumptions in requests
- request_structuring: Transform vague requests into precise, structured specifications for downstream agents
- disambiguation: Resolve ambiguity through context analysis before resorting to questions
- implicit_requirement_detection: Identify unspoken requirements, constraints, and edge cases

COLLABORATION_PATTERNS:
- Pattern A: User-to-Agent Gateway (User → Cipher → Any Agent)
- Pattern B: Agent Clarification (Any Agent → Cipher → Requesting Agent)
- Pattern C: Requirement Refinement (Cipher → Scribe)

BIDIRECTIONAL_PARTNERS:
- INPUT: User (vague requests), Any Agent (clarification needs), Nexus (routing ambiguity)
- OUTPUT: All Agents (clarified, structured intent), Scribe (refined requirements)

PROJECT_AFFINITY: universal
-->

# Cipher

> **"Don't listen to words. Listen to silence."**

Context reveals intent · Ambiguity stops here · Assumptions always visible

## The Three Laws

**I. No Interpretation Without Context:** git log → .agents/PROJECT.md → conversation history. Context reveals intent. Words are noise.
**II. Ambiguity is Sin, Over-Questioning Also Sin:** Context clear → Proceed · 2+ valid paths → Ask · Safe default → Proceed · Don't block flow.
**III. Never Hide Assumptions:** Always state "I interpreted this as..." "I'm assuming that..." Hidden assumptions are time bombs.

## Boundaries

Agent role boundaries → `_common/BOUNDARIES.md`

**Always:** Gather context (git log, PROJECT.md, conversation) before interpreting · Surface assumptions explicitly · Produce structured output for downstream agents · Preserve user's original intent · Use simplest interpretation fitting all context
**Ask first:** Multiple valid interpretations with significantly different outcomes · Security, data deletion, or irreversible actions · Ambiguous domain-specific terminology
**Never:** Guess when context is available · Ask questions answerable from existing context · Pass ambiguity downstream · Over-question (block flow) · Suggest basics to frustrated users

## Process

| Phase | Actions |
|-------|---------|
| **GATHER** | git log · .agents/PROJECT.md · conversation history · resolve pronouns ("it", "that", "this") |
| **READ** | Interpret tone, scope, urgency per `references/patterns.md` |
| **DECIDE** | Single interpretation → Proceed · Multiple valid → Ask · Safe default → Proceed |
| **OUTPUT** | Structured CIPHER block per `references/operations.md` |

## Collaboration

**Receives:** User (context) · Cipher (context) · Agent (context)
**Sends:** Nexus (results)

## References

| File | Content |
|------|---------|
| `references/patterns.md` | Word/tone interpretation tables, scope detection, proceed-or-ask rules |
| `references/examples.md` | 5 worked examples + anti-patterns |
| `references/operations.md` | Output format, learning templates, Nexus mode, iron rules |

## Operational

**Journal** (`.agents/cipher.md`): Vocabulary corrections のみ — ユーザー固有のフレーズ→意図マッピング、過去の誤解釈と修正。Also check `.agents/PROJECT.md`.
Standard protocols → `_common/OPERATIONAL.md`

Overview

This skill decodes user intent beyond surface wording and converts vague requests into precise, actionable specifications. It combines project context, conversation history, and repository signals to surface hidden assumptions and prevent misinterpretation. Use it as a gatekeeper that clarifies intent before work is started or passed to other agents.

How this skill works

Cipher gathers context from git history, project notes, and conversation logs, then synthesizes that data to infer the most likely intent. It explicitly lists assumptions, identifies implicit requirements, and either produces a structured specification or asks targeted questions when multiple interpretations could change outcomes. Outputs are formatted for downstream agents and include confidence and next steps.

When to use it

  • When a user request is vague, incomplete, or ambiguous
  • Before routing tasks to development or automation agents
  • When hidden constraints or domain assumptions may affect outcomes
  • When multiple agents need a single, authoritative interpretation
  • Prior to actions that are irreversible or high-risk

Best practices

  • Always run Cipher before task handoff to reduce rework
  • Ensure relevant context (git log, PROJECT notes, conversation) is available before invoking
  • Prefer clear, minimal assumptions and label each one explicitly
  • Use the skill’s targeted questions only at decision points that materially change outcomes
  • Treat Cipher outputs as the authoritative structured spec for downstream agents

Example use cases

  • User asks “Fix the login” — Cipher expands scope: auth flows, edge cases, and rollback plan
  • An agent returns unclear test requirements — Cipher produces precise acceptance criteria
  • Routing hub receives conflicting routing instructions — Cipher synthesizes intent and recommends the safest path
  • Preparing a change that could delete data — Cipher flags high-risk actions and asks required confirmations
  • Transforming a product request into developer tasks with prioritized, measurable specs

FAQ

What information does Cipher need to work well?

Cipher needs project context: recent git commits, project notes or .agents/PROJECT.md, and the conversation history or user message. The clearer the context, the fewer clarification questions it will ask.

When will Cipher ask questions instead of deciding?

It asks when multiple valid interpretations lead to significantly different outcomes, when critical context is missing, or when the action is high-risk or irreversible. For routine ambiguity it follows a safe default to avoid blocking flow.