team-toon-tack 3.2.2 → 3.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "team-toon-tack",
3
3
  "description": "Linear/Trello task sync & management CLI for Claude Code - saves tokens vs MCP",
4
- "version": "2.4.0",
4
+ "version": "2.5.0",
5
5
  "author": {
6
6
  "name": "wayne930242",
7
7
  "email": "wayne930242@gmail.com"
@@ -57,8 +57,6 @@ Also:
57
57
  ## Before Running
58
58
 
59
59
  Ensure you have:
60
- 1. **Run project validation** - Use `/validate` command or validation skill if available
61
- 2. Committed your changes with a meaningful message
62
- 3. Pushed to remote branch (if applicable)
63
-
64
- **Important**: If validation fails, fix issues before marking as done.
60
+ 1. Committed your changes with a meaningful message
61
+ 2. Pushed to remote branch (if applicable)
62
+ 3. Verified code quality (lint, type-check) if applicable
@@ -44,36 +44,48 @@ ttt work-on next
44
44
 
45
45
  1. Read the task description and requirements
46
46
  2. Check out the suggested branch: `git checkout -b <branch-name>`
47
- 3. **Run project validation** (see below)
47
+ 3. **Check for work-on skill** (see below)
48
48
  4. Begin implementation
49
49
 
50
- ## Project Validation
50
+ ## Work-On Skill
51
51
 
52
- Before starting work, check for validation tools:
52
+ Check for project-specific work guidelines:
53
53
 
54
- ### 1. Check for Existing Validation
54
+ ### 1. Check for Existing Work-On Skill
55
55
 
56
56
  Look for:
57
- - **Commands**: `/validate`, `/check`, `/lint` in available commands
58
- - **Skills**: `validate`, `check`, `verify` in available skills
59
- - **Scripts**: `lint`, `type-check`, `test` in `package.json` or `Makefile`
57
+ - **Skills**: `work-on`, `start-work`, `begin-task` in `.claude/skills/`
58
+ - **Alternative**: Check for `validate`, `check` skills that define project guidelines
60
59
 
61
- ### 2. If No Validation Found
60
+ ### 2. If No Work-On Skill Found
62
61
 
63
- Ask user:
62
+ Suggest user create one:
64
63
  ```
65
- No validation command or skill found for this project.
64
+ No work-on skill found for this project.
65
+
66
+ A work-on skill defines best practices for starting tasks:
67
+ - Code style and conventions
68
+ - Pre-work validation checks
69
+ - Branch naming conventions
70
+ - Required setup steps
71
+
66
72
  Would you like to create one? (y/n)
67
73
  ```
68
74
 
69
75
  If yes, run:
70
76
  ```
71
- /ttt:write-validate
77
+ /ttt:write-work-on-skill
72
78
  ```
73
79
 
74
- ### 3. Run Validation
80
+ The work-on skill should include:
81
+ - **Validation**: lint, type-check, test commands
82
+ - **Code style**: formatting, naming conventions
83
+ - **Workflow**: branch naming, commit message format
84
+ - **Setup**: required dependencies, environment checks
85
+
86
+ ### 3. Use Work-On Skill
75
87
 
76
- Once validation is available:
77
- - Use `/validate` command if exists
78
- - Or use validation skill if available
79
- - Or run detected scripts directly
88
+ Once available:
89
+ - Follow the guidelines defined in the skill
90
+ - Run any validation checks specified
91
+ - Ensure code style compliance
@@ -0,0 +1,159 @@
1
+ ---
2
+ name: ttt:write-work-on-skill
3
+ description: Create a project-specific work-on skill with best practices, validation, and workflow conventions
4
+ arguments:
5
+ - name: skill-name
6
+ description: Name for the skill (default: work-on)
7
+ required: false
8
+ ---
9
+
10
+ # TTT Write Work-On Skill Command
11
+
12
+ Create a project-specific work-on skill by analyzing the codebase.
13
+
14
+ ## Process
15
+
16
+ ### 1. Detect Project Type
17
+
18
+ Check for project indicators:
19
+
20
+ | File | Project Type |
21
+ |------|--------------|
22
+ | `package.json` | Node.js / Bun |
23
+ | `Cargo.toml` | Rust |
24
+ | `go.mod` | Go |
25
+ | `pyproject.toml`, `requirements.txt` | Python |
26
+
27
+ ### 2. Find Existing Configurations
28
+
29
+ Look for configurations to include in best practices:
30
+
31
+ **Linting**: `biome.json`, `.eslintrc.*`, `ruff.toml`
32
+ **Type Check**: `tsconfig.json`, `mypy.ini`
33
+ **Testing**: `jest.config.*`, `vitest.config.*`, `pytest.ini`
34
+ **Formatting**: `.prettierrc`, `.editorconfig`
35
+
36
+ ### 3. Check package.json Scripts
37
+
38
+ If Node.js project:
39
+ ```bash
40
+ cat package.json | jq '.scripts | keys[]' 2>/dev/null
41
+ ```
42
+
43
+ Look for: `lint`, `type-check`, `test`, `check`, `validate`, `format`
44
+
45
+ ### 4. Create Skill File
46
+
47
+ Create `.claude/skills/{{ $1 | default: "work-on" }}/SKILL.md`:
48
+
49
+ ```markdown
50
+ ---
51
+ name: {{ $1 | default: "work-on" }}
52
+ description: Project-specific best practices for starting and completing tasks
53
+ ---
54
+
55
+ # Work-On Skill
56
+
57
+ Best practices for working on tasks in this project.
58
+
59
+ ## Before Starting
60
+
61
+ ### 1. Validation Checks
62
+ \`\`\`bash
63
+ {{ lint-command }}
64
+ {{ type-check-command }}
65
+ \`\`\`
66
+
67
+ ### 2. Branch Naming
68
+ - Feature: `feature/<issue-id>-<short-description>`
69
+ - Bugfix: `fix/<issue-id>-<short-description>`
70
+ - Refactor: `refactor/<issue-id>-<short-description>`
71
+
72
+ ### 3. Environment Setup
73
+ - Ensure dependencies are installed
74
+ - Check for required environment variables
75
+
76
+ ## Code Style
77
+
78
+ ### Formatting
79
+ {{ formatting-rules }}
80
+
81
+ ### Naming Conventions
82
+ {{ naming-conventions }}
83
+
84
+ ### File Structure
85
+ {{ file-structure-notes }}
86
+
87
+ ## Before Completing
88
+
89
+ ### 1. Run All Checks
90
+ \`\`\`bash
91
+ {{ combined-validation-command }}
92
+ \`\`\`
93
+
94
+ ### 2. Commit Message Format
95
+ \`\`\`
96
+ <type>(<scope>): <description>
97
+
98
+ <body>
99
+ \`\`\`
100
+
101
+ Types: feat, fix, refactor, docs, test, chore
102
+
103
+ ### 3. Self-Review Checklist
104
+ - [ ] Code compiles without errors
105
+ - [ ] All tests pass
106
+ - [ ] No linting errors
107
+ - [ ] Changes are focused on the task
108
+ - [ ] No debug code or console.logs left
109
+ ```
110
+
111
+ ### 5. Output
112
+
113
+ After creating:
114
+ 1. Show created file path
115
+ 2. Display detected configurations
116
+ 3. Suggest customizing the skill
117
+
118
+ ## Examples
119
+
120
+ ### Node.js with Biome + TypeScript
121
+ ```
122
+ Detected: Node.js project with Biome + TypeScript
123
+
124
+ Created: .claude/skills/work-on/SKILL.md
125
+
126
+ Configurations found:
127
+ Lint: bun run lint
128
+ Type: bun run type-check
129
+ Format: bun run format
130
+ Test: bun run test
131
+
132
+ The skill has been created with these defaults.
133
+ Please review and customize for your team's conventions.
134
+ ```
135
+
136
+ ### Python with Ruff + mypy
137
+ ```
138
+ Detected: Python project with Ruff + mypy
139
+
140
+ Created: .claude/skills/work-on/SKILL.md
141
+
142
+ Configurations found:
143
+ Lint: ruff check .
144
+ Type: mypy .
145
+ Format: ruff format .
146
+ Test: pytest
147
+
148
+ The skill has been created with these defaults.
149
+ Please review and customize for your team's conventions.
150
+ ```
151
+
152
+ ## Customization Tips
153
+
154
+ After creating the skill, consider adding:
155
+
156
+ 1. **Team-specific conventions**: PR review process, documentation requirements
157
+ 2. **Project-specific checks**: Security scanning, dependency audits
158
+ 3. **Environment setup**: Database migrations, API key checks
159
+ 4. **Testing requirements**: Coverage thresholds, required test types
@@ -120,8 +120,8 @@ export async function handleLinearCompletion(context) {
120
120
  default:
121
121
  result = await handleSimpleCompletion(context);
122
122
  }
123
- // Add comment with commit info
124
- if (commit) {
123
+ // Add comment with commit info (only if promptMessage provided)
124
+ if (commit && promptMessage) {
125
125
  const commentBody = buildCompletionComment(commit, promptMessage);
126
126
  const commentSuccess = await addComment(task.linearId, commentBody);
127
127
  if (commentSuccess) {
@@ -31,8 +31,8 @@ export async function handleTrelloCompletion(context) {
31
31
  if (result.success) {
32
32
  console.log(`Trello: ${task.id} → ${transitions.done}`);
33
33
  }
34
- // Add comment with commit info
35
- if (commit) {
34
+ // Add comment with commit info (only if promptMessage provided)
35
+ if (commit && promptMessage) {
36
36
  const commentBody = buildCompletionComment(commit, promptMessage);
37
37
  const commentResult = await adapter.addComment(sourceId, commentBody);
38
38
  if (commentResult.success) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "team-toon-tack",
3
- "version": "3.2.2",
3
+ "version": "3.2.4",
4
4
  "description": "Linear & Trello task sync & management CLI with TOON format",
5
5
  "type": "module",
6
6
  "bin": {
@@ -211,20 +211,20 @@ The `ttt done` command behaves differently based on configured mode:
211
211
  - No cycle or parent issue support
212
212
  - Always uses simple completion mode
213
213
 
214
- ## Project Validation
214
+ ## Work-On Skill
215
215
 
216
- Before starting or completing tasks, run project validation:
216
+ Before starting tasks, check for project-specific work guidelines:
217
217
 
218
- 1. **Check for validation command/skill**: Look for `/validate`, `/check` commands or validation skills
218
+ 1. **Check for work-on skill**: Look for `work-on`, `start-work` skills in `.claude/skills/`
219
219
  2. **Check package.json/Makefile**: Look for `lint`, `type-check`, `test` scripts
220
220
 
221
- If no validation exists, suggest running `/ttt:write-validate` to create a project-specific validation command.
221
+ If no work-on skill exists, suggest running `/ttt:write-work-on-skill` to create project-specific best practices (includes validation, code style, workflow conventions).
222
222
 
223
223
  ## Best Practices
224
224
 
225
225
  ### DO
226
226
  - Always `ttt sync` before starting work
227
- - **Run project validation** before starting and before completing tasks
227
+ - **Check for work-on skill** before starting tasks
228
228
  - Use `ttt work-on next` for auto-prioritization
229
229
  - Include meaningful messages with `ttt done -m "..."`
230
230
  - Check `ttt status` to verify state before commits
@@ -234,7 +234,7 @@ If no validation exists, suggest running `/ttt:write-validate` to create a proje
234
234
  - Don't manually edit `cycle.toon` - use CLI commands
235
235
  - Don't skip sync - local data may be stale
236
236
  - Don't forget to commit before `ttt done`
237
- - Don't mark tasks done without running validation
237
+ - Don't mark tasks done without verification
238
238
  - Don't use `--all` on sync unless you need completed issues
239
239
 
240
240
  ## Troubleshooting
@@ -1,122 +0,0 @@
1
- ---
2
- name: ttt:write-validate
3
- description: Create a project validation command by detecting project type and existing lint/test configurations
4
- arguments:
5
- - name: command-name
6
- description: Name for the command (default: validate)
7
- required: false
8
- ---
9
-
10
- # TTT Write-Validate Command
11
-
12
- Create a project-specific validation command by analyzing the codebase.
13
-
14
- ## Process
15
-
16
- ### 1. Detect Project Type
17
-
18
- Check for project indicators:
19
-
20
- | File | Project Type |
21
- |------|--------------|
22
- | `package.json` | Node.js / Bun |
23
- | `Cargo.toml` | Rust |
24
- | `go.mod` | Go |
25
- | `pyproject.toml`, `requirements.txt` | Python |
26
-
27
- ### 2. Find Existing Configurations
28
-
29
- Look for static analysis configs:
30
-
31
- **Linting**: `biome.json`, `.eslintrc.*`, `ruff.toml`
32
- **Type Check**: `tsconfig.json`, `mypy.ini`
33
- **Testing**: `jest.config.*`, `vitest.config.*`, `pytest.ini`
34
-
35
- ### 3. Check package.json Scripts
36
-
37
- If Node.js project:
38
- ```bash
39
- cat package.json | jq '.scripts | keys[]' 2>/dev/null
40
- ```
41
-
42
- Look for: `lint`, `type-check`, `test`, `check`, `validate`
43
-
44
- ### 4. Create Command File
45
-
46
- Create `.claude/commands/{{ $1 | default: "validate" }}.md`:
47
-
48
- ```markdown
49
- ---
50
- name: {{ $1 | default: "validate" }}
51
- description: Run project validation (lint, type-check, test)
52
- ---
53
-
54
- # Project Validation
55
-
56
- Run validation checks for this project.
57
-
58
- ## Process
59
-
60
- ### 1. Lint
61
- \`\`\`bash
62
- {{ lint-command }}
63
- \`\`\`
64
-
65
- ### 2. Type Check
66
- \`\`\`bash
67
- {{ type-check-command }}
68
- \`\`\`
69
-
70
- ### 3. Test (optional)
71
- \`\`\`bash
72
- {{ test-command }}
73
- \`\`\`
74
-
75
- ## Quick Validate All
76
-
77
- \`\`\`bash
78
- {{ combined-command }}
79
- \`\`\`
80
-
81
- ## On Failure
82
-
83
- 1. Show error output
84
- 2. Identify failing file(s) and line(s)
85
- 3. Suggest fixes
86
- 4. Re-run validation after fixes
87
- ```
88
-
89
- ### 5. Output
90
-
91
- After creating:
92
- 1. Show created file path
93
- 2. Display detected validation commands
94
- 3. Suggest running `/{{ $1 | default: "validate" }}` to test
95
-
96
- ## Examples
97
-
98
- ### Node.js with Biome
99
- ```
100
- Detected: Node.js project with Biome + TypeScript
101
- Created: .claude/commands/validate.md
102
-
103
- Commands:
104
- Lint: bun run lint
105
- Type: bun run type-check
106
- Test: bun run test
107
-
108
- Try: /validate
109
- ```
110
-
111
- ### Python with Ruff
112
- ```
113
- Detected: Python project with Ruff + mypy
114
- Created: .claude/commands/validate.md
115
-
116
- Commands:
117
- Lint: ruff check .
118
- Type: mypy .
119
- Test: pytest
120
-
121
- Try: /validate
122
- ```