Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
122 changes: 122 additions & 0 deletions .agents/skills/QwenVoice/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
```markdown
# QwenVoice Development Patterns

> Auto-generated skill from repository analysis

## Overview

This skill teaches the core development patterns and workflows for the QwenVoice TypeScript codebase. It covers coding conventions, file organization, import/export styles, and the main project maintenance workflows, including how to update operating guides and enforcement scripts. The guide is intended for contributors seeking to maintain consistency and follow best practices within the QwenVoice repository.

## Coding Conventions

### File Naming

- Use **camelCase** for file names.
- Example: `audioProcessor.ts`, `voiceSynthesizer.test.ts`

### Import Style

- Use **relative imports** for internal modules.
- Example:
```typescript
import { processAudio } from './audioProcessor';
```

### Export Style

- Use **named exports** for all modules.
- Example:
```typescript
// audioProcessor.ts
export function processAudio(input: Buffer): Buffer { ... }
```

### Commit Patterns

- Commit messages are **freeform** (no enforced prefix).
- Average commit message length: ~53 characters.

## Workflows

### Operating Guide Replacement & Update

**Trigger:** When the main project operating guide is replaced or renamed (e.g., `AGENTS.md` → `CLAUDE.md`).

**Command:** `/replace-operating-guide`

**Step-by-step:**

1. **Create or expand the new operating guide file**
- Example: Add or update `CLAUDE.md` with the latest content, merging or rewriting as needed.
2. **Delete or deprecate the old guide**
- Example: Remove `AGENTS.md` from the repository.
3. **Update all documentation references**
- Search for all references to the old guide in documentation files (e.g., `docs/README.md`, `docs/qwen_tone.md`, etc.) and update them to point to the new guide.
- Example:
```diff
- See AGENTS.md for the operating guide.
+ See CLAUDE.md for the operating guide.
```
4. **Update enforcement scripts**
- Modify scripts like `scripts/check_project_inputs.sh` to allow or disallow references to the new/old guide as appropriate.
- Example:
```bash
# In scripts/check_project_inputs.sh
PROHIBITED_REFERENCE_PATTERNS=("AGENTS.md")
# Update to:
PROHIBITED_REFERENCE_PATTERNS=("CLAUDE.md")
```

**Files Involved:**
- `CLAUDE.md`
- `AGENTS.md`
- `docs/README.md`
- `docs/qwen_tone.md`
- `docs/reference/current-state.md`
- `docs/reference/backend-freeze-gate.md`
- `docs/reference/frontend-backend-contract.md`
- `scripts/check_project_inputs.sh`

---

### Enforcement Script Reference Update

**Trigger:** When the set of allowed or prohibited references in the codebase changes (e.g., after adding or renaming a guide).

**Command:** `/update-reference-enforcement`

**Step-by-step:**

1. **Modify enforcement scripts**
- Edit `scripts/check_project_inputs.sh` to update `PROHIBITED_REFERENCE_PATTERNS` or similar logic to reflect the new set of allowed/banned references.
- Example:
```bash
# Allow references to CLAUDE.md, ban AGENTS.md
PROHIBITED_REFERENCE_PATTERNS=("AGENTS.md")
```
2. **Test enforcement**
- Run the script and verify that the intended references are correctly allowed or banned.
- Example:
```bash
bash scripts/check_project_inputs.sh
```

**Files Involved:**
- `scripts/check_project_inputs.sh`

---

## Testing Patterns

- **Test files** follow the pattern: `*.test.*`
- Example: `voiceSynthesizer.test.ts`
- **Testing framework:** Not explicitly detected; check test files for framework usage.
- **Test organization:** Tests are colocated with source files or in dedicated test directories.

## Commands

| Command | Purpose |
|-----------------------------|----------------------------------------------------------------|
| /replace-operating-guide | Transition to a new operating guide and update all references. |
| /update-reference-enforcement | Update enforcement scripts for allowed/prohibited references. |
```
6 changes: 6 additions & 0 deletions .agents/skills/QwenVoice/agents/openai.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
interface:
display_name: "QwenVoice"
short_description: "Repo-specific patterns and workflows for QwenVoice"
default_prompt: "Use the QwenVoice repo skill to follow existing architecture, testing, and workflow conventions."
policy:
allow_implicit_invocation: true
34 changes: 34 additions & 0 deletions .claude/commands/enforcement-script-reference-update.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: enforcement-script-reference-update
description: Workflow command scaffold for enforcement-script-reference-update in QwenVoice.
allowed_tools: ["Bash", "Read", "Write", "Grep", "Glob"]
---

# /enforcement-script-reference-update

Use this workflow when working on **enforcement-script-reference-update** in `QwenVoice`.

## Goal

Updating enforcement scripts to allow or ban references to specific files or patterns in the project.

## Common Files

- `scripts/check_project_inputs.sh`

## Suggested Sequence

1. Understand the current state and failure mode before editing.
2. Make the smallest coherent change that satisfies the workflow goal.
3. Run the most relevant verification for touched files.
4. Summarize what changed and what still needs review.

## Typical Commit Signals

- Modify scripts/check_project_inputs.sh to update PROHIBITED_REFERENCE_PATTERNS or similar logic.
- Test that the new references are correctly allowed or banned as intended.

## Notes

- Treat this as a scaffold, not a hard-coded script.
- Update the command if the workflow evolves materially.
41 changes: 41 additions & 0 deletions .claude/commands/operating-guide-replacement-update.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
name: operating-guide-replacement-update
description: Workflow command scaffold for operating-guide-replacement-update in QwenVoice.
allowed_tools: ["Bash", "Read", "Write", "Grep", "Glob"]
---

# /operating-guide-replacement-update

Use this workflow when working on **operating-guide-replacement-update** in `QwenVoice`.

## Goal

Transitioning the primary operating guide from one file to another, updating all references and related enforcement scripts.

## Common Files

- `CLAUDE.md`
- `AGENTS.md`
- `docs/README.md`
- `docs/qwen_tone.md`
- `docs/reference/current-state.md`
- `docs/reference/backend-freeze-gate.md`

## Suggested Sequence

1. Understand the current state and failure mode before editing.
2. Make the smallest coherent change that satisfies the workflow goal.
3. Run the most relevant verification for touched files.
4. Summarize what changed and what still needs review.

## Typical Commit Signals

- Create or expand the new operating guide file (e.g., CLAUDE.md) with updated or merged content.
- Delete or deprecate the old operating guide file (e.g., AGENTS.md).
- Update all documentation files that reference the old guide to point to the new guide.
- Update enforcement scripts (e.g., scripts/check_project_inputs.sh) to allow or disallow references to the new/old guide as appropriate.

## Notes

- Treat this as a scaffold, not a hard-coded script.
- Update the command if the workflow evolves materially.
Loading
Loading