mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-02-15 19:03:22 +08:00
* fix: resolve multiple reported issues (#205, #182, #188, #172, #173) - fix(observe.sh): replace triple-quote JSON parsing with stdin pipe to prevent ~49% parse failures on payloads with quotes/backslashes/unicode - fix(hooks.json): correct matcher syntax to use simple tool name regexes instead of unsupported logical expressions; move command/path filtering into hook scripts; use exit code 2 for blocking hooks - fix(skills): quote YAML descriptions containing colons in 3 skill files and add missing frontmatter to 2 skill files for Codex CLI compatibility - feat(rules): add paths: filters to all 15 language-specific rule files so they only load when working on matching file types - fix(agents): align model fields with CONTRIBUTING.md recommendations (opus for planner/architect, sonnet for reviewers/workers, haiku for doc-updater) * ci: use AgentShield GitHub Action instead of npx Switch from npx ecc-agentshield to uses: affaan-m/agentshield@v1 for proper GitHub Action demo and marketplace visibility.
1.1 KiB
1.1 KiB
paths
| paths | ||||
|---|---|---|---|---|
|
TypeScript/JavaScript Coding Style
This file extends common/coding-style.md with TypeScript/JavaScript specific content.
Immutability
Use spread operator for immutable updates:
// WRONG: Mutation
function updateUser(user, name) {
user.name = name // MUTATION!
return user
}
// CORRECT: Immutability
function updateUser(user, name) {
return {
...user,
name
}
}
Error Handling
Use async/await with try-catch:
try {
const result = await riskyOperation()
return result
} catch (error) {
console.error('Operation failed:', error)
throw new Error('Detailed user-friendly message')
}
Input Validation
Use Zod for schema-based validation:
import { z } from 'zod'
const schema = z.object({
email: z.string().email(),
age: z.number().int().min(0).max(150)
})
const validated = schema.parse(input)
Console.log
- No
console.logstatements in production code - Use proper logging libraries instead
- See hooks for automatic detection