xiaohongshu
xiaohongshu
config
Manage bluera-base plugin configuration
Full skill instructions
Manage plugin settings stored in .bluera/bluera-base/.
| Command | Description |
|---|---|
/bluera-base:config or /bluera-base:config show | Interactive feature toggle (view and change settings) |
/bluera-base:config init | Initialize config for this project |
/bluera-base:config set <key> <value> | Set a config value |
/bluera-base:config enable <feature> | Enable a feature |
/bluera-base:config disable <feature> | Disable a feature |
/bluera-base:config reset | Reset to defaults |
/bluera-base:config status [--state] | Show config and state file status |
Interactive feature toggle with current status display.
Steps:
.bluera/bluera-base/ existsconfig.json ← config.local.jsonPhase 1: Display Current Status
Show a compact summary of current state:
bluera-base configuration
Currently enabled: notifications
Currently disabled: auto-learn, deep-learn, auto-commit, auto-push, dry-check, dry-auto, strict-typing, standards-review
Phase 2: Interactive Toggle
Use AskUserQuestion with multiSelect. The question text indicates which features are currently ON so users know what to re-select to keep them enabled.
question: "Select features to enable (unselected = disabled). Currently ON: notifications"
header: "Features"
multiSelect: true
options:
- label: "auto-learn"
description: "Track command patterns, suggest CLAUDE.md edits"
- label: "deep-learn"
description: "Semantic session analysis via Claude CLI (~$0.001/session)"
- label: "auto-commit"
description: "Prompt to commit on session stop"
- label: "auto-push"
description: "Push after commit (requires auto-commit)"
- label: "notifications"
description: "Desktop notifications when Claude needs input"
- label: "dry-check"
description: "Enable /dry command for duplicate detection"
- label: "dry-auto"
description: "Auto-scan for duplicates on stop (requires dry-check)"
- label: "strict-typing"
description: "Block any/as (TS), Any/cast (Python)"
- label: "standards-review"
description: "Review code against CLAUDE.md before commit"
Phase 3: Apply Changes with Dependency Handling
Compare user selections to current state and apply changes:
auto-push selected → also enable auto-commitdry-auto selected → also enable dry-checkauto-commit deselected → also disable auto-pushdry-check deselected → also disable dry-autoPhase 4: Display Summary
Configuration updated:
✓ Enabled: auto-learn, strict-typing
✗ Disabled: notifications
Unchanged: deep-learn, auto-commit, auto-push, dry-check, dry-auto, standards-review
Config saved to .bluera/bluera-base/config.local.json
If no changes were made:
No changes made. Current configuration unchanged.
Feature to Config Path Mapping
| Feature | Config Path |
|---|---|
auto-learn | .autoLearn.enabled |
deep-learn | .deepLearn.enabled |
auto-commit | .autoCommit.enabled |
auto-push | .autoCommit.push |
notifications | .notifications.enabled |
dry-check | .dryCheck.enabled |
dry-auto | .dryCheck.onStop |
strict-typing | .strictTyping.enabled |
standards-review | .standardsReview.enabled |
Interactive initialization that explains each feature and lets user configure during setup.
Steps:
.bluera/bluera-base/ directory structureconfig.json from user choices.gitignore with required patternsInteractive Flow:
Display each section header, explain the feature, then use AskUserQuestion.
## Auto-Learn
Tracks frequently used commands and suggests adding them to CLAUDE.md.
Technical details:
- Observes command patterns during sessions via PreToolUse hook
- Stores patterns in .bluera/bluera-base/state/session-signals.json
- Threshold: number of occurrences before acting (default: 3)
- Modes:
- "suggest" - shows recommendations at session end, you decide
- "auto" - writes learnings directly to target file
- Targets:
- "local" (default) - writes to CLAUDE.local.md (private, gitignored)
- "shared" - writes to CLAUDE.md (committed, team-shared)
Use AskUserQuestion:
## Milhouse
Controls behavior of /milhouse-loop for iterative development tasks.
Technical details:
- defaultMaxIterations: 0 = unlimited, or set limit to prevent runaway loops
- defaultStuckLimit: iterations without progress before asking if stuck (default: 3)
- defaultGates: commands that must pass after each iteration
- Example: ["bun test", "bun run lint"]
- Empty = no gates
Use AskUserQuestion:
If user selects "Set max iterations", ask:
If user selects "Configure gates", ask for gate commands as comma-separated list.
## Notifications
Desktop notifications when Claude Code needs your input.
Technical details:
- Uses osascript on macOS, notify-send on Linux
- Triggered by Notification hook when Claude prompts for input
- Helps when multitasking in other windows
Use AskUserQuestion:
## Auto-Commit
Prompt to commit uncommitted changes when session ends.
Technical details:
- Stop hook blocks exit and prompts you to run /bluera-base:commit
- Uses atomic commit skill for well-formatted commits
- Optional: add push instruction to the prompt
Use AskUserQuestion:
## DRY Check
Detects copy-paste / duplicate code using jscpd.
Technical details:
- threshold: max allowed duplicate percentage (default: 5%)
- minTokens: minimum tokens to consider duplicate (default: 70)
- minLines: minimum lines to consider duplicate (default: 5)
- onStop: auto-scan when session ends (default: false)
- Manual scan always available via /dry command
Use AskUserQuestion:
## Strict Typing
Block unsafe type patterns in TypeScript and Python.
Technical details:
- TypeScript: blocks `any` type, `as` casts (except `as const`), @ts-ignore without explanation
- Python: blocks `Any` type, `# type: ignore` without error code, `cast()`
- Enforced by post-edit-check.sh hook on every file edit
- Escape hatch: `// ok:` or `# ok:` comment on specific lines
Use AskUserQuestion:
After all questions:
Build config object from user responses
Write to .bluera/bluera-base/config.json
Update .gitignore:
.bluera/
!.bluera/
!.bluera/bluera-base/
!.bluera/bluera-base/config.json
Display final configuration summary:
Configuration saved to .bluera/bluera-base/config.json
Enabled features:
✓ notifications
✓ strict-typing
Disabled features:
✗ auto-learn
✗ auto-commit
✗ dry-check
Run /bluera-base:config show to see full settings.
Run /bluera-base:config enable|disable <feature> to change later.
Arguments: <key> <value> [--shared]
.autoLearn.mode)config.local.json (or config.json with --shared)Toggle features by name. If the feature name is not recognized, list available features.
| Feature | Config Path | Description |
|---|---|---|
auto-learn | .autoLearn.enabled | Track command patterns, suggest CLAUDE.md edits |
auto-commit | .autoCommit.enabled | Auto-commit uncommitted changes on session stop |
auto-push | .autoCommit.push | Add push instruction to auto-commit prompt (requires auto-commit enabled) |
notifications | .notifications.enabled | Desktop notifications on permission prompts |
dry-check | .dryCheck.enabled | Enable DRY duplicate code detection |
dry-auto | .dryCheck.onStop | Auto-scan for duplicates on session stop (requires dry-check enabled) |
strict-typing | .strictTyping.enabled | Block any/as (TS), Any/cast (Python) |
standards-review | .standardsReview.enabled | Review code against CLAUDE.md before commit |
deep-learn | .deepLearn.enabled | Semantic session analysis using Claude CLI |
If unrecognized feature name:
Unknown feature: "autoLearn"
Available features:
auto-learn Track patterns, suggest CLAUDE.md edits
auto-commit Prompt to commit on stop
auto-push Add push instruction to prompt
notifications Desktop notifications on prompts
dry-check Detect duplicate code
dry-auto Auto-scan for duplicates on stop
strict-typing Block any/as (TS), Any/cast (Python)
standards-review Review code against CLAUDE.md on commit
deep-learn Semantic session analysis via Claude CLI
Options:
config.local.json only (keep shared config)--all: Remove both config filesShow state file status for debugging and visibility.
.bluera/bluera-base/ existsOutput format:
Config: .bluera/bluera-base/
├── config.json (exists, 250 bytes)
└── config.local.json (not found)
State: .bluera/bluera-base/state/
├── milhouse-loop.md (active, iteration 3/10)
└── session-signals.json (12 entries)
Env (from CLAUDE_ENV_FILE):
├── BLUERA_STATE_DIR: /path/to/state
└── BLUERA_CONFIG: /path/to/config.json
{
"version": 1,
"autoLearn": {
"enabled": false, // opt-in: track commands for learning suggestions
"mode": "suggest", // suggest | auto
"threshold": 3, // occurrences before suggesting
"target": "local" // local | shared
},
"milhouse": {
"defaultMaxIterations": 0, // 0 = unlimited
"defaultStuckLimit": 3, // 0 = disabled
"defaultGates": [] // e.g., ["bun test", "bun run lint"]
},
"notifications": {
"enabled": true
},
"autoCommit": {
"enabled": false, // opt-in: auto-commit on session stop
"onStop": true, // trigger on Stop hook
"push": false, // also push after commit
"remote": "origin" // remote to push to
},
"dryCheck": {
"enabled": false, // opt-in: enable DRY duplicate detection
"onStop": false, // auto-scan on session stop
"threshold": 5, // max allowed duplicate %
"minTokens": 70, // min tokens to consider duplicate
"minLines": 5 // min lines to consider duplicate
},
"strictTyping": {
"enabled": false // opt-in: block 'any', 'as' casts, type: ignore
},
"standardsReview": {
"enabled": false, // opt-in: review code against CLAUDE.md on commit
"mode": "warn" // warn (report only) | block (prevent commit)
},
"deepLearn": {
"enabled": false, // opt-in: semantic session analysis
"model": "haiku", // haiku | sonnet
"maxBudget": 0.02 // max USD per analysis
}
}
.bluera/bluera-base/
├── config.json # Team-shareable (committed)
├── config.local.json # Personal overrides (gitignored)
└── state/ # Runtime state (gitignored)
├── milhouse-loop.md # Active loop state
├── session-signals.json # Learning observation data
├── pending-learnings.jsonl # Deep learning pending queue
├── dry-report.md # Last DRY scan report
└── jscpd-report.json # Raw jscpd output
# Interactive toggle - view current settings and toggle features on/off
/bluera-base:config
# Same as above (show is the default)
/bluera-base:config show
# Initialize config for a new project (guided setup)
/bluera-base:config init
# CLI toggle - enable/disable specific features (for scripting)
/bluera-base:config enable auto-learn
# Set learning mode to auto-apply
/bluera-base:config set .autoLearn.mode auto
# Set default gates for milhouse
/bluera-base:config set .milhouse.defaultGates '["bun test", "bun run lint"]' --shared
# Disable notifications
/bluera-base:config disable notifications
# Reset local overrides
/bluera-base:config reset
# Reset everything
/bluera-base:config reset --all
# Show state file status (useful for debugging milhouse loops)
/bluera-base:config status --state
# Enable auto-commit on session stop
/bluera-base:config enable auto-commit
# Enable auto-push after commit
/bluera-base:config enable auto-push
# Set custom remote for auto-push
/bluera-base:config set .autoCommit.remote upstream --shared
# Enable DRY duplicate checking
/bluera-base:config enable dry-check
# Enable auto-scan on session stop
/bluera-base:config enable dry-auto
# Set custom DRY thresholds
/bluera-base:config set .dryCheck.minTokens 50 --shared
# Enable strict typing enforcement (blocks any, as casts, type: ignore)
/bluera-base:config enable strict-typing
# Enable standards review on commit (validates against CLAUDE.md)
/bluera-base:config enable standards-review
# Set standards review to block mode (prevents commits with violations)
/bluera-base:config set .standardsReview.mode block --shared
# Enable deep learning (semantic session analysis)
/bluera-base:config enable deep-learn
# Set deep learning model (haiku is faster/cheaper, sonnet is smarter)
/bluera-base:config set .deepLearn.model sonnet
# Set max budget per analysis
/bluera-base:config set .deepLearn.maxBudget 0.05
The /bluera-base:config init command adds these patterns to .gitignore:
# Bluera plugins - shared config committed, local/state ignored
.bluera/
!.bluera/
!.bluera/bluera-base/
!.bluera/bluera-knowledge/
.bluera/bluera-base/*
.bluera/bluera-knowledge/*
!.bluera/bluera-base/config.json
!.bluera/bluera-base/TODO.txt
!.bluera/bluera-knowledge/stores.config.json
This ensures:
.bluera/ data is ignored by defaultconfig.json is committed (team-shareable)config.local.json and state/ are gitignoredUse the config library for all operations:
source "${CLAUDE_PLUGIN_ROOT}/hooks/lib/config.sh"
source "${CLAUDE_PLUGIN_ROOT}/hooks/lib/gitignore.sh"
# Load effective config
config=$(bluera_load_config)
# Get specific value
enabled=$(bluera_get_config ".autoLearn.enabled")
# Check boolean
if bluera_config_enabled ".autoLearn.enabled"; then
# do learning...
fi
# Set value
bluera_set_config ".autoLearn.mode" "auto"
# Ensure gitignore patterns
gitignore_ensure_patterns
xiaohongshu
technical spec
product ux expert
database patterns
Conduct multi-agent task orchestration and workflow coordination.
Initialize project with Conductor artifacts (product definition,
Expert in web animations, transitions, and motion design using Framer Motion and CSS
Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...
PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.
Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...
Display project status, active tracks, and next actions
Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.
Generate, edit, and beat-sync AI video with leading models in one workspace.
The world's fastest calendar for remote work
Transform Your Design with AI Designer by ImgCreator.ai
Revolutionizing Video Production with AI-Powered Creativity
Extend an image past the frame and let AI fill the new aspect ratio.
Discover your celebrity doppelgänger with StarByFace!
ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.
Opus.ai: Revolutionize Your Web Experience