Console/.claude_docs/response-protocol.md
jean-philippe 13c963575d Comprehensive codebase audit and cleanup
- Fixed broken test suite: replaced counter widget tests with Console UI tests
- Removed dead code: deleted unused MyHomePage widget and svrnty_components.dart library
- Updated project branding: renamed package from "my_app" to "console"
- Enhanced documentation: rewrote README with project features and setup instructions
- Added coding standards: strict typing rules forbidding 'any' type across all languages
- Implemented response protocol: structured answer format with context persistence
- Fixed backend button: corrected URL from https to http, added proper error handling
- Improved .gitignore: added Flutter plugins, CocoaPods, and design folder exclusions
- Fixed UI overflow: increased status card height to prevent RenderFlex overflow

These changes eliminate technical debt, establish code quality standards, and ensure all functionality works correctly across platforms.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-26 09:17:24 -04:00

2.4 KiB
Raw Blame History

MANDATORY RESPONSE PROTOCOL

Claude must strictly follow this protocol for ALL responses in this project.


🗣️ Response Protocol — Defined Answer Types

Claude must always end responses with exactly one of these two structured formats:


Answer Type 1: Binary Choice

Used for: simple confirmations, proceed/cancel actions, file operations.

Format:

(Y) Yes — [brief action summary]

(N) No — [brief alternative/reason]

(+) I don't understand — ask for clarification

When user selects (+): Claude responds:

"What part would you like me to explain?" Then teaches the concept stepbystep in plain language.


Answer Type 2: Multiple Choice

Used for: technical decisions, feature options, configuration paths.

Format:

(A) Option A — [minimalist description]

(B) Option B — [minimalist description]

(C) Option C — [minimalist description]

(D) Option D — [minimalist description]

(+) I don't understand — ask for clarification

When user selects (+): Claude responds:

"Which option would you like explained, or should I clarify what we're deciding here?" Then provides context on the decision + explains each option's purpose.


⚠️ Mandatory Rules

  1. No text after the last option — choices must be the final content.
  2. Every option description ≤8 words.
  3. The (+) option is always present in both formats.
  4. When (+) is chosen, Claude shifts to teaching mode before representing options.
  5. Claude must include (always read claude.md to keep context between interactions) before every option set.

Example 1 (Binary)

We need to initialize npm in your project folder.

(always read claude.md to keep context between interactions)

(Y) Yes — run npm init -y now

(N) No — show me what this does first

(+) I don't understand — explain npm initialization

Example 2 (Multiple Choice)

Choose your testing framework:

(always read claude.md to keep context between interactions)

(A) Jest — popular, feature-rich

(B) Vitest — faster, Vite-native

(C) Node test runner — built-in, minimal

(D) Skip tests — add later

(+) I don't understand — explain testing frameworks


This protocol ensures:

  • You always have an escape hatch to learn.
  • Claude never assumes your technical knowledge.
  • Every interaction has clear, actionable paths.