Files
wifi-densepose/.claude/settings.json
Claude 6ed69a3d48 feat: Complete Rust port of WiFi-DensePose with modular crates
Major changes:
- Organized Python v1 implementation into v1/ subdirectory
- Created Rust workspace with 9 modular crates:
  - wifi-densepose-core: Core types, traits, errors
  - wifi-densepose-signal: CSI processing, phase sanitization, FFT
  - wifi-densepose-nn: Neural network inference (ONNX/Candle/tch)
  - wifi-densepose-api: Axum-based REST/WebSocket API
  - wifi-densepose-db: SQLx database layer
  - wifi-densepose-config: Configuration management
  - wifi-densepose-hardware: Hardware abstraction
  - wifi-densepose-wasm: WebAssembly bindings
  - wifi-densepose-cli: Command-line interface

Documentation:
- ADR-001: Workspace structure
- ADR-002: Signal processing library selection
- ADR-003: Neural network inference strategy
- DDD domain model with bounded contexts

Testing:
- 69 tests passing across all crates
- Signal processing: 45 tests
- Neural networks: 21 tests
- Core: 3 doc tests

Performance targets:
- 10x faster CSI processing (~0.5ms vs ~5ms)
- 5x lower memory usage (~100MB vs ~500MB)
- WASM support for browser deployment
2026-01-13 03:11:16 +00:00

259 lines
6.7 KiB
JSON

{
"hooks": {
"PreToolUse": [
{
"matcher": "^(Write|Edit|MultiEdit)$",
"hooks": [
{
"type": "command",
"command": "[ -n \"$TOOL_INPUT_file_path\" ] && npx @claude-flow/cli@latest hooks pre-edit --file \"$TOOL_INPUT_file_path\" 2>/dev/null || true",
"timeout": 5000,
"continueOnError": true
}
]
},
{
"matcher": "^Bash$",
"hooks": [
{
"type": "command",
"command": "[ -n \"$TOOL_INPUT_command\" ] && npx @claude-flow/cli@latest hooks pre-command --command \"$TOOL_INPUT_command\" 2>/dev/null || true",
"timeout": 5000,
"continueOnError": true
}
]
},
{
"matcher": "^Task$",
"hooks": [
{
"type": "command",
"command": "[ -n \"$TOOL_INPUT_prompt\" ] && npx @claude-flow/cli@latest hooks pre-task --task-id \"task-$(date +%s)\" --description \"$TOOL_INPUT_prompt\" 2>/dev/null || true",
"timeout": 5000,
"continueOnError": true
}
]
}
],
"PostToolUse": [
{
"matcher": "^(Write|Edit|MultiEdit)$",
"hooks": [
{
"type": "command",
"command": "[ -n \"$TOOL_INPUT_file_path\" ] && npx @claude-flow/cli@latest hooks post-edit --file \"$TOOL_INPUT_file_path\" --success \"${TOOL_SUCCESS:-true}\" 2>/dev/null || true",
"timeout": 5000,
"continueOnError": true
}
]
},
{
"matcher": "^Bash$",
"hooks": [
{
"type": "command",
"command": "[ -n \"$TOOL_INPUT_command\" ] && npx @claude-flow/cli@latest hooks post-command --command \"$TOOL_INPUT_command\" --success \"${TOOL_SUCCESS:-true}\" 2>/dev/null || true",
"timeout": 5000,
"continueOnError": true
}
]
},
{
"matcher": "^Task$",
"hooks": [
{
"type": "command",
"command": "[ -n \"$TOOL_RESULT_agent_id\" ] && npx @claude-flow/cli@latest hooks post-task --task-id \"$TOOL_RESULT_agent_id\" --success \"${TOOL_SUCCESS:-true}\" 2>/dev/null || true",
"timeout": 5000,
"continueOnError": true
}
]
}
],
"UserPromptSubmit": [
{
"hooks": [
{
"type": "command",
"command": "[ -n \"$PROMPT\" ] && npx @claude-flow/cli@latest hooks route --task \"$PROMPT\" || true",
"timeout": 5000,
"continueOnError": true
}
]
}
],
"SessionStart": [
{
"hooks": [
{
"type": "command",
"command": "npx @claude-flow/cli@latest daemon start --quiet 2>/dev/null || true",
"timeout": 5000,
"continueOnError": true
},
{
"type": "command",
"command": "[ -n \"$SESSION_ID\" ] && npx @claude-flow/cli@latest hooks session-restore --session-id \"$SESSION_ID\" 2>/dev/null || true",
"timeout": 10000,
"continueOnError": true
}
]
}
],
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "echo '{\"ok\": true}'",
"timeout": 1000
}
]
}
],
"Notification": [
{
"hooks": [
{
"type": "command",
"command": "[ -n \"$NOTIFICATION_MESSAGE\" ] && npx @claude-flow/cli@latest memory store --namespace notifications --key \"notify-$(date +%s)\" --value \"$NOTIFICATION_MESSAGE\" 2>/dev/null || true",
"timeout": 3000,
"continueOnError": true
}
]
}
],
"PermissionRequest": [
{
"matcher": "^mcp__claude-flow__.*$",
"hooks": [
{
"type": "command",
"command": "echo '{\"decision\": \"allow\", \"reason\": \"claude-flow MCP tool auto-approved\"}'",
"timeout": 1000
}
]
},
{
"matcher": "^Bash\\(npx @?claude-flow.*\\)$",
"hooks": [
{
"type": "command",
"command": "echo '{\"decision\": \"allow\", \"reason\": \"claude-flow CLI auto-approved\"}'",
"timeout": 1000
}
]
}
]
},
"statusLine": {
"type": "command",
"command": "npx @claude-flow/cli@latest hooks statusline 2>/dev/null || node .claude/helpers/statusline.cjs 2>/dev/null || echo \"▊ Claude Flow V3\"",
"refreshMs": 5000,
"enabled": true
},
"permissions": {
"allow": [
"Bash(npx claude-flow*)",
"Bash(npx @claude-flow/*)",
"mcp__claude-flow__*"
],
"deny": []
},
"claudeFlow": {
"version": "3.0.0",
"enabled": true,
"modelPreferences": {
"default": "claude-opus-4-5-20251101",
"routing": "claude-3-5-haiku-20241022"
},
"swarm": {
"topology": "hierarchical-mesh",
"maxAgents": 15
},
"memory": {
"backend": "hybrid",
"enableHNSW": true
},
"neural": {
"enabled": true
},
"daemon": {
"autoStart": true,
"workers": [
"map",
"audit",
"optimize",
"consolidate",
"testgaps",
"ultralearn",
"deepdive",
"document",
"refactor",
"benchmark"
],
"schedules": {
"audit": {
"interval": "1h",
"priority": "critical"
},
"optimize": {
"interval": "30m",
"priority": "high"
},
"consolidate": {
"interval": "2h",
"priority": "low"
},
"document": {
"interval": "1h",
"priority": "normal",
"triggers": [
"adr-update",
"api-change"
]
},
"deepdive": {
"interval": "4h",
"priority": "normal",
"triggers": [
"complex-change"
]
},
"ultralearn": {
"interval": "1h",
"priority": "normal"
}
}
},
"learning": {
"enabled": true,
"autoTrain": true,
"patterns": [
"coordination",
"optimization",
"prediction"
],
"retention": {
"shortTerm": "24h",
"longTerm": "30d"
}
},
"adr": {
"autoGenerate": true,
"directory": "/docs/adr",
"template": "madr"
},
"ddd": {
"trackDomains": true,
"validateBoundedContexts": true,
"directory": "/docs/ddd"
},
"security": {
"autoScan": true,
"scanOnEdit": true,
"cveCheck": true,
"threatModel": true
}
}
}