Interactive idea refinement using Socratic method to develop fully-formed designs
日本語の概要は準備中です。原文の説明を表示しています。
Recognize when disagreements reveal valuable context, preserve multiple valid approaches instead of forcing premature resolution
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Some tensions aren't problems to solve - they're valuable information to preserve. When multiple approaches are genuinely valid in different contexts, forcing a choice destroys flexibility.
Core principle: Preserve tensions that reveal context-dependence. Force resolution only when necessary.
A tension is productive when:
A tension needs resolution when:
Make the choice configurable rather than baked into architecture:
class Config:
mode: Literal["optimize_cost", "optimize_latency"]
# Each mode gets clean, simple implementation
When to use: Both approaches are architecturally compatible, switching is runtime decision
Maintain both as separate clean modules with shared contract:
# processor/batch.py - optimizes for cost
# processor/stream.py - optimizes for latency
# Both implement: def process(data) -> Result
When to use: Approaches diverge significantly, but share same interface
Capture the tension explicitly in documentation/decision records:
## Unresolved Tension: Authentication Strategy
**Option A: JWT** - Stateless, scales easily, but token revocation is hard
**Option B: Sessions** - Easy revocation, but requires shared state
**Why unresolved:** Different deployments need different trade-offs
**Decision deferred to:** Deployment configuration
**Review trigger:** If 80% of deployments choose one option
When to use: Can't preserve both in code, but need to document the choice was deliberate
All of these mean: STOP. Consider preserving the tension.
You SHOULD force resolution when:
Implementation cost is prohibitive
Fundamental conflict
Clear technical superiority
One-way door
Simplicity requires choice
Ask explicitly: "Should I pick one, or preserve both as options?"
When preserving tensions, document clearly:
## Tension: [Name]
**Context:** [Why this tension exists]
**Option A:** [Approach]
- Optimizes for: [Priority]
- Trade-off: [Cost]
- Best when: [Context]
**Option B:** [Approach]
- Optimizes for: [Different priority]
- Trade-off: [Different cost]
- Best when: [Different context]
**Preservation strategy:** [Configuration/Parallel/Documented]
**Resolution trigger:** [Conditions that would force choosing one]
"Should we optimize for cost or latency?"
"Should we use SSE or WebSockets?"
"Should we support offline mode?"
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Interactive idea refinement using Socratic method to develop fully-formed designs
日本語の概要は準備中です。原文の説明を表示しています。
Receive and act on code review feedback with technical rigor, not performative agreement or blind implementation
日本語の概要は準備中です。原文の説明を表示しています。
Force unrelated concepts together to discover emergent properties - "What if we treated X like Y?"
日本語の概要は準備中です。原文の説明を表示しています。
Replace arbitrary timeouts with condition polling for reliable async tests
日本語の概要は準備中です。原文の説明を表示しています。
Validate at every layer data passes through to make bugs impossible
日本語の概要は準備中です。原文の説明を表示しています。
Use multiple Claude agents to investigate and fix independent problems concurrently
日本語の概要は準備中です。原文の説明を表示しています。