rbin-task-flow 1.25.1 → 1.26.1
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.
- package/.claude/skills/rbin-coding-standards/SKILL.md +1 -1
- package/.claude/skills/task-flow-audit/SKILL.md +1 -1
- package/.claude/skills/task-flow-estimate/SKILL.md +9 -6
- package/.claude/skills/task-flow-from-contexts/SKILL.md +16 -0
- package/.claude/skills/task-flow-report/SKILL.md +1 -1
- package/.claude/skills/task-flow-run/SKILL.md +2 -2
- package/.claude/skills/task-flow-status/SKILL.md +1 -1
- package/.claude/skills/task-flow-sync/SKILL.md +1 -2
- package/.claude/skills/task-flow-sync/workflow.md +1 -1
- package/.claude/skills/task-flow-validate/SKILL.md +3 -3
- package/.cursor/rules/graphify-task-flow.mdc +7 -8
- package/.cursor/rules/task-flow-cursor.mdc +3 -8
- package/.cursor/rules/task-flow-sync.mdc +2 -2
- package/.cursor/rules/task_execution.mdc +2 -7
- package/.cursor/rules/task_from_contexts.mdc +93 -0
- package/.cursor/rules/task_validate.mdc +1 -7
- package/.cursor/rules/task_work.mdc +1 -1
- package/.task-flow/README.md +70 -53
- package/.task-flow/guides/AI-PLATFORMS.md +6 -7
- package/.task-flow/guides/CODEX.md +16 -63
- package/.task-flow/guides/CURSOR.md +4 -5
- package/.task-flow/guides/GRAPHIFY.md +12 -13
- package/.task-flow/guides/platforms/claude-code.md +20 -27
- package/.task-flow/guides/platforms/codex.md +9 -22
- package/.task-flow/guides/platforms/cursor.md +14 -35
- package/.task-flow/tasks.input.txt +3 -4
- package/AGENTS.md +3 -13
- package/CLAUDE.md +12 -8
- package/README.md +14 -22
- package/bin/cli.js +3 -24
- package/lib/gitignore.js +0 -2
- package/lib/graphify.js +50 -18
- package/lib/install.js +1 -14
- package/package.json +1 -2
- package/.claude/skills/task-flow-check/SKILL.md +0 -15
- package/.claude/skills/task-flow-generate-flow/SKILL.md +0 -15
- package/.claude/skills/task-flow-improve-changes/SKILL.md +0 -15
- package/.claude/skills/task-flow-refactor/SKILL.md +0 -14
- package/.claude/skills/task-flow-review/SKILL.md +0 -14
- package/.claude/skills/task-flow-think/SKILL.md +0 -19
- package/.cursor/rules/task_analysis.mdc +0 -45
- package/.cursor/rules/task_check.mdc +0 -37
- package/.cursor/rules/task_generate_flow.mdc +0 -90
- package/.cursor/rules/task_improve_changes.mdc +0 -50
- package/.cursor/rules/task_refactor.mdc +0 -94
- package/.cursor/rules/task_review.mdc +0 -88
- package/lib/audit.js +0 -44
- package/lib/check.js +0 -113
|
@@ -15,7 +15,7 @@ paths: ["src/**", "app/**"]
|
|
|
15
15
|
2. Implement using checklist rules: `app/` thin, `features/`, `shared/`, service+use-case, RHF+zod+`Controller`, `cn()`, no `any`, no raw base UI.
|
|
16
16
|
3. **Vercel projects:** env files per **Vercel — environment variables** in `coding-standards-full.md` (§0–§8).
|
|
17
17
|
4. **Only if ambiguous** (Nest gateways, DataHandler, route groups, naming edge case): open **one or two sections** of `.task-flow/guides/coding-standards-full.md` — never paste or load the whole file.
|
|
18
|
-
5. If
|
|
18
|
+
5. If `.task-flow/guides/graphify-out/graph.json` exists, `graphify query` before choosing file paths for new code.
|
|
19
19
|
6. No explanatory code comments; use `dev-logs/` for non-obvious design notes.
|
|
20
20
|
|
|
21
21
|
## Token discipline
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: task-flow-audit
|
|
3
3
|
description: Audits the full codebase against RBIN coding standards with a score table and asks which improvements to adopt. Use when the user says task-flow audit or audit coding standards for the whole project.
|
|
4
|
-
disable-model-invocation:
|
|
4
|
+
disable-model-invocation: false
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Task Flow — Audit
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: task-flow-estimate
|
|
3
|
-
description: Estimates hours for RBIN Task Flow tasks
|
|
4
|
-
disable-model-invocation:
|
|
3
|
+
description: Estimates hours for RBIN Task Flow tasks (single ID, comma-separated IDs, or all). Use when the user says task-flow estimate 1, estimate 1,2, estimate all, or time estimate for tasks.
|
|
4
|
+
disable-model-invocation: false
|
|
5
5
|
paths: [".task-flow/**"]
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Task Flow — Estimate
|
|
9
9
|
|
|
10
|
-
1.
|
|
11
|
-
2.
|
|
12
|
-
3.
|
|
13
|
-
4.
|
|
10
|
+
1. Parse intent: `estimate X` | `estimate X,Y` | `estimate all`.
|
|
11
|
+
2. Read `.task-flow/.internal/tasks.json` for the matching task ID(s).
|
|
12
|
+
3. Infer complexity (low/medium/high) from title, description, subtasks, risk — not subtask count alone.
|
|
13
|
+
4. Output one range in hours per task, e.g. `10-14 hours`.
|
|
14
|
+
5. State assumption: average developer, average pace, no AI acceleration.
|
|
15
|
+
|
|
16
|
+
**CLI (optional):** `rbin-task-flow estimate 1` · `rbin-task-flow estimate 1,2` · `rbin-task-flow estimate all`
|
|
14
17
|
|
|
15
18
|
Reference: `.cursor/rules/task_estimate.mdc`
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: task-flow-from-contexts
|
|
3
|
+
description: Creates tasks in tasks.input.txt from files in .task-flow/contexts/ (images, PDF, text, etc.). Use when the user says task-flow from contexts, import contexts, gerar tasks dos contexts, or criar tasks a partir dos contexts.
|
|
4
|
+
disable-model-invocation: false
|
|
5
|
+
paths: [".task-flow/**"]
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Task Flow — From contexts
|
|
9
|
+
|
|
10
|
+
1. List `.task-flow/contexts/` (optional scope: one file or comma-separated list).
|
|
11
|
+
2. Read each context (text directly; images/PDF with vision when available).
|
|
12
|
+
3. Skip files already referenced via `task-flow-screen` in `tasks.input.txt`.
|
|
13
|
+
4. Append new `- Description task-flow-screen filename.ext` lines under `## Tasks:`.
|
|
14
|
+
5. Report added/skipped lines; suggest `task-flow: sync` — do **not** sync automatically.
|
|
15
|
+
|
|
16
|
+
Reference: `.cursor/rules/task_from_contexts.mdc`
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: task-flow-report
|
|
3
3
|
description: Generates implementation markdown report for completed RBIN Task Flow tasks. Use when the user says task-flow report X or document completed task.
|
|
4
|
-
disable-model-invocation:
|
|
4
|
+
disable-model-invocation: false
|
|
5
5
|
paths: [".task-flow/**"]
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: task-flow-run
|
|
3
3
|
description: Executes RBIN Task Flow subtasks from tasks.json and status.json. Use when the user says task-flow run, run next X subtasks, work on task N, execute pending subtasks, implement task flow, or trabalhar nas próximas subtarefas.
|
|
4
|
-
disable-model-invocation:
|
|
4
|
+
disable-model-invocation: false
|
|
5
5
|
paths: [".task-flow/**"]
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -18,7 +18,7 @@ paths: [".task-flow/**"]
|
|
|
18
18
|
3. Parse intent: `run next X` (default X=1) | `run X` | `run X,Y` | `run all`.
|
|
19
19
|
4. **`run X` / `run X,Y`:** If any task before X has pending subtasks, **stop** and list blocking tasks.
|
|
20
20
|
5. For each subtask: follow `instructions`; read `.task-flow/contexts/` files when referenced.
|
|
21
|
-
6. If
|
|
21
|
+
6. If `.task-flow/guides/graphify-out/graph.json` exists, prefer `graphify query "<module from subtask>" --graph .task-flow/guides/graphify-out/graph.json` before broad grep (summarized output only — see GRAPHIFY.md).
|
|
22
22
|
7. After each subtask: update `status.json` and `tasks.status.md` (regenerate 📊 Summary).
|
|
23
23
|
8. When parent task complete: mark task `done` in both files.
|
|
24
24
|
9. Invoke `/rbin-git` logic to **suggest** commit only — never `git add`/`commit`/`push`.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: task-flow-status
|
|
3
3
|
description: Shows RBIN Task Flow progress from tasks.status.md. Use when the user says task-flow status, show task status, status das tasks, or ver progresso das tarefas.
|
|
4
|
-
disable-model-invocation:
|
|
4
|
+
disable-model-invocation: false
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Task Flow — Status
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: task-flow-sync
|
|
3
3
|
description: Synchronizes RBIN Task Flow tasks.input.txt with tasks.json, status.json, and tasks.status.md. Use when the user says task-flow sync, sync tasks, sincronizar tasks, or after editing tasks.input.txt.
|
|
4
|
-
disable-model-invocation:
|
|
4
|
+
disable-model-invocation: false
|
|
5
5
|
paths: [".task-flow/**"]
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -18,7 +18,6 @@ paths: [".task-flow/**"]
|
|
|
18
18
|
7. **Unchanged:** leave task data and status as-is.
|
|
19
19
|
8. Align `status.json` with `tasks.status.md` (`status.json` is source of truth).
|
|
20
20
|
9. Regenerate 📊 Summary in `tasks.status.md`.
|
|
21
|
-
10. Do **not** populate `tasks.flow.md` (only `task-flow: generate flow`).
|
|
22
21
|
|
|
23
22
|
## Contexts
|
|
24
23
|
|
|
@@ -50,7 +50,7 @@ All subtasks `pending`; task `pending`.
|
|
|
50
50
|
|
|
51
51
|
- Preserve status on modified tasks when subtasks still match.
|
|
52
52
|
- New subtasks after regen → `pending`; removed subtasks → drop from status.
|
|
53
|
-
- Never explore codebase during pure sync unless user
|
|
53
|
+
- Never explore codebase during pure sync unless user explicitly asks for codebase analysis in the same message.
|
|
54
54
|
|
|
55
55
|
## After sync
|
|
56
56
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: task-flow-validate
|
|
3
3
|
description: Deep-validates RBIN Task Flow tasks against the codebase, reverts false done status, and appends missing gaps to tasks.input.txt then syncs. Use when the user says task-flow validate, validate all, validar tasks, or verificar lacunas.
|
|
4
|
-
disable-model-invocation:
|
|
4
|
+
disable-model-invocation: false
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Task Flow — Validate
|
|
8
8
|
|
|
9
|
-
Thorough implementation audit + automatic gap fill
|
|
9
|
+
Thorough implementation audit + automatic gap fill in `tasks.input.txt`.
|
|
10
10
|
|
|
11
11
|
1. Read `tasks.input.txt`, `tasks.json`, `status.json`, `contexts/` — scope `X`, `X,Y`, or `all` (default `all`).
|
|
12
12
|
2. **Verify** each subtask in scope: `done` must match code; `pending` checked for drift.
|
|
@@ -17,6 +17,6 @@ Thorough implementation audit + automatic gap fill (unlike `review` or `think`).
|
|
|
17
17
|
- Run sync workflow (`@task-flow-sync` / `task-flow-sync.mdc`)
|
|
18
18
|
5. Report verified / reverted / added / next `run`.
|
|
19
19
|
|
|
20
|
-
Optional: `graphify query` per task area if
|
|
20
|
+
Optional: `graphify query` per task area if `.task-flow/guides/graphify-out/graph.json` exists.
|
|
21
21
|
|
|
22
22
|
Reference: `.cursor/rules/task_validate.mdc`
|
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Use Graphify knowledge graph only when executing RBIN Task Flow commands that need codebase navigation (task-flow run,
|
|
2
|
+
description: Use Graphify knowledge graph only when executing RBIN Task Flow commands that need codebase navigation (task-flow run, validate, audit). Prefer graphify query over blind grep when .task-flow/guides/graphify-out exists. Never override task-flow status updates or git rules.
|
|
3
3
|
alwaysApply: false
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
- **Graphify + RBIN Task Flow (coexistence):**
|
|
7
|
-
- **Graphify** maps repo structure (
|
|
7
|
+
- **Graphify** maps repo structure (`.task-flow/guides/graphify-out/graph.json`, `GRAPH_REPORT.md`). **Task Flow** owns tasks (`.task-flow/`), status, and commands `task-flow: …`.
|
|
8
8
|
- **Do not compete:** Task Flow rules (`task_work`, `task-flow-sync`, `rbin-git-policy`, etc.) always win for workflow, git, and status files.
|
|
9
9
|
|
|
10
10
|
- **When to use Graphify:**
|
|
11
|
-
- **`task-flow: run` / `run next X`:** Before implementing a subtask
|
|
12
|
-
- **`task-flow:
|
|
13
|
-
- **`task-flow: review X`:** Optional `graphify affected "<symbol>"` to verify impact surface.
|
|
11
|
+
- **`task-flow: run` / `run next X`:** Before implementing a subtask, if `.task-flow/guides/graphify-out/graph.json` exists, use `graphify query "<feature or module from subtask>" --graph .task-flow/guides/graphify-out/graph.json` or read `GRAPH_REPORT.md` god nodes — then implement. If no graph exists, suggest `graphify extract . --backend claude-cli --out .task-flow/guides` (or `rbin-task-flow init --graphify`).
|
|
12
|
+
- **`task-flow: validate`:** Optional `graphify query` / `graphify affected` per task area when verifying implementation.
|
|
14
13
|
- **`task-flow: validate`:** Optional `graphify query` per task area before verifying implementation; then append lacunas + sync per `task_validate.mdc`.
|
|
15
14
|
- **`task-flow: audit`:** Graphify is structural only; scoring uses [coding_standards.mdc](mdc:.cursor/rules/coding_standards.mdc) checklist. Deep dive: sections of [coding-standards-full.md](mdc:.task-flow/guides/coding-standards-full.md) only if user asks for depth.
|
|
16
15
|
|
|
17
16
|
- **When NOT to use Graphify:**
|
|
18
|
-
- `task-flow: sync`, `status`, `estimate`, `report
|
|
17
|
+
- `task-flow: sync`, `status`, `estimate`, `report` — only `.task-flow/` files.
|
|
19
18
|
- Updating `status.json` / `tasks.status.md` — never defer to Graphify.
|
|
20
19
|
- Git write operations — [rbin-git-policy.mdc](mdc:.cursor/rules/rbin-git-policy.mdc) only suggests commits.
|
|
21
20
|
|
|
@@ -24,8 +23,8 @@ alwaysApply: false
|
|
|
24
23
|
- RBIN Task Flow init sets upstream `graphify.mdc` to `alwaysApply: false` to save context.
|
|
25
24
|
|
|
26
25
|
- **CLI (project root):**
|
|
27
|
-
- Build graph: `graphify extract . --backend claude-cli` or `rbin-task-flow init --graphify` (re-run after large refactors).
|
|
28
|
-
- Query: `graphify query "question"` · `graphify affected "node"`.
|
|
26
|
+
- Build graph: `graphify extract . --backend claude-cli --out .task-flow/guides` or `rbin-task-flow init --graphify` (re-run after large refactors).
|
|
27
|
+
- Query: `graphify query "question" --graph .task-flow/guides/graphify-out/graph.json` · `graphify affected "node" --graph .task-flow/guides/graphify-out/graph.json`.
|
|
29
28
|
- Guide: [.task-flow/guides/GRAPHIFY.md](mdc:.task-flow/guides/GRAPHIFY.md)
|
|
30
29
|
|
|
31
30
|
- **Principle:**
|
|
@@ -21,18 +21,13 @@ alwaysApply: true
|
|
|
21
21
|
| User intent | Invoke |
|
|
22
22
|
|-------------|--------|
|
|
23
23
|
| `task-flow: sync` | `@task-flow-sync` or [task-flow-sync.mdc](mdc:.cursor/rules/task-flow-sync.mdc) |
|
|
24
|
+
| `task-flow: from contexts` | `@task-flow-from-contexts` |
|
|
24
25
|
| `task-flow: run next X`, `run N` | `@task-flow-run` |
|
|
25
26
|
| `task-flow: status` | `@task-flow-status` |
|
|
26
|
-
| `task-flow: think` | `@task-flow-think` |
|
|
27
|
-
| `task-flow: check` | `@task-flow-check` |
|
|
28
27
|
| `task-flow: audit` | `@task-flow-audit` |
|
|
29
|
-
| `task-flow: improve changes` | `@task-flow-improve-changes` |
|
|
30
|
-
| `task-flow: review X` | `@task-flow-review` |
|
|
31
28
|
| `task-flow: validate` | `@task-flow-validate` |
|
|
32
|
-
| `task-flow:
|
|
33
|
-
| `task-flow: estimate X` | `@task-flow-estimate` |
|
|
29
|
+
| `task-flow: estimate X` / `X,Y` / `all` | `@task-flow-estimate` |
|
|
34
30
|
| `task-flow: report X` | `@task-flow-report` |
|
|
35
|
-
| `task-flow: generate flow` | `@task-flow-generate-flow` |
|
|
36
31
|
| Implementing code | `@rbin-coding-standards` |
|
|
37
32
|
| Suggest commit | `@rbin-git` |
|
|
38
33
|
|
|
@@ -44,7 +39,7 @@ Never write git — user runs all commits. Policy: [rbin-git-policy.mdc](mdc:.cu
|
|
|
44
39
|
|
|
45
40
|
## Graphify (optional)
|
|
46
41
|
|
|
47
|
-
On `run` / `
|
|
42
|
+
On `run` / `validate`, if `.task-flow/guides/graphify-out/` exists: `graphify query` before repo-wide grep. Rule: `graphify-task-flow`. Guide: `.task-flow/guides/GRAPHIFY.md`.
|
|
48
43
|
|
|
49
44
|
## More detail
|
|
50
45
|
|
|
@@ -6,7 +6,7 @@ alwaysApply: false
|
|
|
6
6
|
|
|
7
7
|
# task-flow: sync
|
|
8
8
|
|
|
9
|
-
**Prefer:** `@task-flow-sync` · Skill
|
|
9
|
+
**Prefer:** `@task-flow-sync` · Skill: `.claude/skills/task-flow-sync/workflow.md` · Works with `/task-flow-sync` and `task-flow: sync`.
|
|
10
10
|
|
|
11
11
|
## 1. Read
|
|
12
12
|
|
|
@@ -33,7 +33,7 @@ Task IDs stay sequential (1, 2, 3…) matching `tasks.input.txt` order.
|
|
|
33
33
|
- Subtask instructions: **checklist** in [coding_standards.mdc](mdc:.cursor/rules/coding_standards.mdc) only — not [coding-standards-full.md](mdc:.task-flow/guides/coding-standards-full.md)
|
|
34
34
|
- More templates: [task_generation.mdc](mdc:.cursor/rules/task_generation.mdc)
|
|
35
35
|
|
|
36
|
-
**Sync rules:** no codebase exploration; no questions
|
|
36
|
+
**Sync rules:** no codebase exploration; no questions.
|
|
37
37
|
|
|
38
38
|
## 4. Align status
|
|
39
39
|
|
|
@@ -12,18 +12,13 @@ alwaysApply: false
|
|
|
12
12
|
| Command | Invoke |
|
|
13
13
|
|---------|--------|
|
|
14
14
|
| `task-flow: sync` | `@task-flow-sync` |
|
|
15
|
+
| `task-flow: from contexts` | `@task-flow-from-contexts` |
|
|
15
16
|
| `task-flow: run next X`, `run N` | `@task-flow-run` |
|
|
16
17
|
| `task-flow: status` | `@task-flow-status` |
|
|
17
|
-
| `task-flow: think` | `@task-flow-think` |
|
|
18
|
-
| `task-flow: check` | `@task-flow-check` |
|
|
19
18
|
| `task-flow: audit` | `@task-flow-audit` |
|
|
20
|
-
| `task-flow: improve changes` | `@task-flow-improve-changes` |
|
|
21
|
-
| `task-flow: review X` | `@task-flow-review` |
|
|
22
19
|
| `task-flow: validate` | `@task-flow-validate` |
|
|
23
|
-
| `task-flow:
|
|
24
|
-
| `task-flow: estimate X` | `@task-flow-estimate` |
|
|
20
|
+
| `task-flow: estimate X` / `X,Y` / `all` | `@task-flow-estimate` |
|
|
25
21
|
| `task-flow: report X` | `@task-flow-report` |
|
|
26
|
-
| `task-flow: generate flow` | `@task-flow-generate-flow` |
|
|
27
22
|
| Implement code | `@rbin-coding-standards` |
|
|
28
23
|
| Suggest commit | `@rbin-git` |
|
|
29
24
|
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Drafts tasks in tasks.input.txt from files in .task-flow/contexts/. Use for task-flow from contexts, import contexts, gerar tasks dos contexts.
|
|
3
|
+
alwaysApply: false
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# task-flow: from contexts
|
|
7
|
+
|
|
8
|
+
**Prefer:** `@task-flow-from-contexts` · **Next step:** `task-flow: sync` (user runs separately).
|
|
9
|
+
|
|
10
|
+
## When to run
|
|
11
|
+
|
|
12
|
+
User says `task-flow: from contexts`, `from contexts`, `import contexts`, `gerar tasks dos contexts`, `criar tasks a partir dos contexts`, etc.
|
|
13
|
+
|
|
14
|
+
**Optional scope:** `task-flow: from contexts file.png` or `file1.png,file2.md` — only those files under `.task-flow/contexts/`.
|
|
15
|
+
|
|
16
|
+
Default scope: **all context files** not yet represented in `tasks.input.txt`.
|
|
17
|
+
|
|
18
|
+
## What it does
|
|
19
|
+
|
|
20
|
+
Reads specs/mockups in `.task-flow/contexts/` and **appends** new `- Task description` lines to `.task-flow/tasks.input.txt`. Does **not** run sync, edit `.internal/`, or remove existing task lines.
|
|
21
|
+
|
|
22
|
+
## Process
|
|
23
|
+
|
|
24
|
+
### 1. Discover contexts
|
|
25
|
+
|
|
26
|
+
- List `.task-flow/contexts/` (top level; include subfolders if present).
|
|
27
|
+
- **Skip:** dotfiles, `README*`, and files that only document how `contexts/` works (e.g. `example.png.txt` unless user scoped it).
|
|
28
|
+
- Supported: images (`.png`, `.jpg`, `.webp`, `.gif`), text (`.md`, `.txt`), data (`.json`, `.yaml`, `.yml`), PDF when the environment can read them.
|
|
29
|
+
|
|
30
|
+
### 2. Read existing tasks
|
|
31
|
+
|
|
32
|
+
- Parse `.task-flow/tasks.input.txt` — lines starting with `- `.
|
|
33
|
+
- A context file is **already covered** if `tasks.input.txt` contains `task-flow-screen <filename>` or an equivalent reference to that basename.
|
|
34
|
+
|
|
35
|
+
### 3. Analyze each new context file
|
|
36
|
+
|
|
37
|
+
- **Text / markdown / JSON / YAML:** read and infer the deliverable (screen, API, feature, doc, fix).
|
|
38
|
+
- **Images:** inspect visually (mockup, wireframe, diagram) and infer UI/feature scope.
|
|
39
|
+
- **PDF:** extract requirements when readable; otherwise note limitation in the report.
|
|
40
|
+
- Group related files into **one task** only when clearly one deliverable (e.g. `login.png` + `login-spec.md`); otherwise **one task per file**.
|
|
41
|
+
|
|
42
|
+
### 4. Draft task lines
|
|
43
|
+
|
|
44
|
+
Format (same as manual tasks):
|
|
45
|
+
|
|
46
|
+
```text
|
|
47
|
+
- Short actionable description task-flow-screen filename.ext
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Rules:
|
|
51
|
+
|
|
52
|
+
- One line per task; start with `- `; natural language; imperative tone.
|
|
53
|
+
- Always append `task-flow-screen <exact-basename>` when the task comes from a file in `contexts/` (sync uses this in subtask instructions).
|
|
54
|
+
- Do **not** duplicate meaning or `task-flow-screen` refs already in `tasks.input.txt`.
|
|
55
|
+
- Do **not** edit or delete existing lines.
|
|
56
|
+
|
|
57
|
+
### 5. Write
|
|
58
|
+
|
|
59
|
+
- Append new lines under the `## Tasks:` section (or at end of task list if that heading is missing).
|
|
60
|
+
- Preserve comments, headings, and blank lines elsewhere in the file.
|
|
61
|
+
|
|
62
|
+
### 6. Report
|
|
63
|
+
|
|
64
|
+
```markdown
|
|
65
|
+
## From contexts
|
|
66
|
+
|
|
67
|
+
### Added to tasks.input.txt
|
|
68
|
+
- `- … task-flow-screen foo.png`
|
|
69
|
+
- (none — all contexts already had tasks)
|
|
70
|
+
|
|
71
|
+
### Skipped
|
|
72
|
+
- `example.png.txt` — folder documentation
|
|
73
|
+
- `bar.png` — already referenced in tasks.input.txt
|
|
74
|
+
|
|
75
|
+
### Next
|
|
76
|
+
Run `task-flow: sync` to generate subtasks.
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## Variants
|
|
80
|
+
|
|
81
|
+
| Intent | Example |
|
|
82
|
+
|--------|---------|
|
|
83
|
+
| All new contexts | `task-flow: from contexts` |
|
|
84
|
+
| Specific file(s) | `task-flow: from contexts login-mockup.png` |
|
|
85
|
+
| Multiple files | `task-flow: from contexts a.png,b.md` |
|
|
86
|
+
|
|
87
|
+
## Integration
|
|
88
|
+
|
|
89
|
+
- Sync after: [task-flow-sync.mdc](mdc:.cursor/rules/task-flow-sync.mdc) / `@task-flow-sync`
|
|
90
|
+
- Context linking in subtasks: [task_generation.mdc](mdc:.cursor/rules/task_generation.mdc)
|
|
91
|
+
- Git: [rbin-git-policy.mdc](mdc:.cursor/rules/rbin-git-policy.mdc) — suggest commit after user syncs if they want
|
|
92
|
+
|
|
93
|
+
**Principle:** Contexts hold the spec; this command turns them into task lines; sync turns lines into subtasks.
|
|
@@ -7,10 +7,6 @@ alwaysApply: false
|
|
|
7
7
|
|
|
8
8
|
**Prefer:** `@task-flow-validate` · After changes: status is updated automatically; new lines trigger sync.
|
|
9
9
|
|
|
10
|
-
**Not the same as:**
|
|
11
|
-
- `task-flow: review` — only checks `done` subtasks; asks before status revert; does not add tasks.
|
|
12
|
-
- `task-flow: think` — suggests tasks; **asks** before writing `tasks.input.txt`.
|
|
13
|
-
|
|
14
10
|
## When to run
|
|
15
11
|
|
|
16
12
|
User says `task-flow: validate`, `task-flow: validate X`, `task-flow: validate all`, `validar tasks`, `verificar lacunas`, `validate implementation gaps`, etc.
|
|
@@ -19,7 +15,7 @@ Default scope when no ID: **`all`**.
|
|
|
19
15
|
|
|
20
16
|
## Depth
|
|
21
17
|
|
|
22
|
-
Use **thorough** reasoning: read each subtask `instructions`, `.task-flow/contexts/` when cited, verify files/tests/docs in the codebase — not a shallow grep. Optional: `graphify query "<module>"` per task area when
|
|
18
|
+
Use **thorough** reasoning: read each subtask `instructions`, `.task-flow/contexts/` when cited, verify files/tests/docs in the codebase — not a shallow grep. Optional: `graphify query "<module>"` per task area when `.task-flow/guides/graphify-out/graph.json` exists.
|
|
23
19
|
|
|
24
20
|
## Process
|
|
25
21
|
|
|
@@ -92,8 +88,6 @@ Find work not covered by current tasks:
|
|
|
92
88
|
## Integration
|
|
93
89
|
|
|
94
90
|
- Sync: [task-flow-sync.mdc](mdc:.cursor/rules/task-flow-sync.mdc)
|
|
95
|
-
- Review (lighter): [task_review.mdc](mdc:.cursor/rules/task_review.mdc)
|
|
96
|
-
- Think (suggest only): [task_analysis.mdc](mdc:.cursor/rules/task_analysis.mdc)
|
|
97
91
|
- Git: [rbin-git-policy.mdc](mdc:.cursor/rules/rbin-git-policy.mdc)
|
|
98
92
|
|
|
99
93
|
**Principle:** Validate = truth check + fill gaps. Done means done; missing work becomes new tasks automatically.
|
|
@@ -23,7 +23,7 @@ Natural language (`work on next 3 subtasks`, `execute all subtasks of task 2`) =
|
|
|
23
23
|
|
|
24
24
|
1. Read `status.json` first; load `tasks.json` by pending task ids only if **>50 subtasks** total (see `@task-flow-run` workflow).
|
|
25
25
|
2. **`run X`:** If tasks `1..X-1` have any pending subtask, **stop** and list blockers; do not run X.
|
|
26
|
-
3. Implement per `instructions`; read `.task-flow/contexts/` when referenced; optional `graphify query` if
|
|
26
|
+
3. Implement per `instructions`; read `.task-flow/contexts/` when referenced; optional `graphify query` if `.task-flow/guides/graphify-out/` exists ([graphify-task-flow.mdc](mdc:.cursor/rules/graphify-task-flow.mdc)).
|
|
27
27
|
4. After each subtask: `status.json` → `done`; `tasks.status.md` → `- [x]` + regenerate 📊 Summary.
|
|
28
28
|
5. Parent task all done → mark task `done` in both files.
|
|
29
29
|
6. Suggest commit via [rbin-git-policy.mdc](mdc:.cursor/rules/rbin-git-policy.mdc) / `@rbin-git` — never write git.
|
package/.task-flow/README.md
CHANGED
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
├── README.md ← você está aqui
|
|
8
8
|
├── tasks.input.txt ← defina tasks (`- descrição`)
|
|
9
9
|
├── tasks.status.md ← progresso (auto; não editar)
|
|
10
|
-
├── tasks.flow.md ← deps/horas (task-flow: generate flow)
|
|
11
10
|
├── contexts/ ← specs, mockups
|
|
12
11
|
├── .internal/ ← tasks.json, status.json (sistema)
|
|
13
12
|
└── guides/ ← documentação e configs
|
|
@@ -16,6 +15,7 @@
|
|
|
16
15
|
├── CODEX.md · CURSOR.md
|
|
17
16
|
├── coding-standards-full.md ← inclui padrão .env Vercel (§ Vercel)
|
|
18
17
|
├── platforms/ ← Claude, Cursor, Codex
|
|
18
|
+
├── graphify-out/ ← grafo Graphify (init --graphify)
|
|
19
19
|
└── reports/ ← task-X-implementation.md
|
|
20
20
|
```
|
|
21
21
|
|
|
@@ -33,27 +33,57 @@
|
|
|
33
33
|
| Otimização (tokens) | [guides/OPTIMIZATION-PLAN.md](guides/OPTIMIZATION-PLAN.md) |
|
|
34
34
|
| Coding standards (full) | [guides/coding-standards-full.md](guides/coding-standards-full.md) (Vercel `.env` no topo) |
|
|
35
35
|
|
|
36
|
+
## Graphify (opcional)
|
|
37
|
+
|
|
38
|
+
Grafo em **`.task-flow/guides/graphify-out/`** (não na raiz do projeto).
|
|
39
|
+
|
|
40
|
+
**Pré-requisito:** CLI `graphify` no PATH (`rbin-install-dev`) + `claude` autenticado (Claude Code).
|
|
41
|
+
|
|
42
|
+
### Projeto novo
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
cd seu-projeto
|
|
46
|
+
rbin-task-flow init --graphify
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Projeto que já usa Task Flow (atualizar pacote + migrar grafo)
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
npm install -g rbin-task-flow@latest
|
|
53
|
+
cd seu-projeto
|
|
54
|
+
rbin-task-flow update --graphify
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
O `update --graphify` reaplica rules/skills, move `graphify-out/` legado da raiz para `guides/graphify-out/` (se existir) e roda o extract.
|
|
58
|
+
|
|
59
|
+
### Só regerar o grafo (sem reinstall do template)
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
cd seu-projeto
|
|
63
|
+
graphify extract . --backend claude-cli --out .task-flow/guides
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Na IA (`task-flow: run`)
|
|
67
|
+
|
|
68
|
+
```text
|
|
69
|
+
task-flow: run next 2 — se .task-flow/guides/graphify-out/ existir,
|
|
70
|
+
graphify query "<módulo>" --graph .task-flow/guides/graphify-out/graph.json antes de editar.
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Guia completo: [guides/GRAPHIFY.md](guides/GRAPHIFY.md).
|
|
74
|
+
|
|
36
75
|
## 🚀 Quick Commands
|
|
37
76
|
|
|
38
|
-
| Command | Description |
|
|
39
|
-
|
|
40
|
-
| `task-flow:
|
|
41
|
-
| `task-flow:
|
|
42
|
-
| `task-flow: validate` | Deep audit vs codebase; revert false done; append gaps to `tasks.input.txt`; sync |
|
|
43
|
-
| `task-flow: status` | Shows current task status |
|
|
44
|
-
| `task-flow: run next X` |
|
|
45
|
-
| `task-flow:
|
|
46
|
-
| `task-flow:
|
|
47
|
-
| `task-flow:
|
|
48
|
-
| `task-flow: review X` | Reviews specific task(s) (e.g., `task-flow: review 1` or `task-flow: review 10,11` or `task-flow: review all`) |
|
|
49
|
-
| `task-flow: refactor X` | Refactors specific task(s) (e.g., `task-flow: refactor 1` or `task-flow: refactor 10,11` or `task-flow: refactor all`) |
|
|
50
|
-
| `task-flow: estimate X` | Estimates time for task X (e.g., `task-flow: estimate 1` or `task-flow: estimate 10,11`) |
|
|
51
|
-
| `task-flow: report X` | Generates implementation report for task X (e.g., `task-flow: report 1` or `task-flow: report 10,11`) |
|
|
52
|
-
| `task-flow: generate flow` | Populates tasks.flow.md with dependencies, estimated hours, and AI model recommendations |
|
|
53
|
-
| `task-flow: audit` | Audits codebase against **coding standards checklist**; full doc on demand |
|
|
54
|
-
| `task-flow: check` | Run lint fix (if available) and build; fix any warnings or errors until both pass |
|
|
55
|
-
| `task-flow: improve changes` | Audit only uncommitted files vs **checklist** (same as audit, scoped to diff) |
|
|
56
|
-
| `rbin-task-flow audit` | **(CLI)** Lists files with unstaged changes (not yet `git add`) |
|
|
77
|
+
| Command | Variants | Description |
|
|
78
|
+
|---------|----------|-------------|
|
|
79
|
+
| `task-flow: from contexts` | `file.ext` · `a.png,b.md` | Draft `- tasks` in `tasks.input.txt` from files in `contexts/` (then run `sync`) |
|
|
80
|
+
| `task-flow: sync` | — | Complete synchronization: adds new, removes deleted, updates modified, preserves status |
|
|
81
|
+
| `task-flow: validate` | `all` (default) · `X` · `X,Y` | Deep audit vs codebase; revert false done; append gaps to `tasks.input.txt`; sync |
|
|
82
|
+
| `task-flow: status` | — | Shows current task status |
|
|
83
|
+
| `task-flow: run` | `next X` · `X` · `X,Y` · `all` | Execute pending subtasks: next N in order, one/many tasks, or everything |
|
|
84
|
+
| `task-flow: estimate` | `X` · `X,Y` · `all` | Time estimate for average developer pace (hours + management buffer) |
|
|
85
|
+
| `task-flow: report` | `X` · `X,Y` · `all` | Implementation report → `.task-flow/guides/reports/task-X-implementation.md` |
|
|
86
|
+
| `task-flow: audit` | — | Audits codebase against **coding standards checklist**; full doc on demand |
|
|
57
87
|
|
|
58
88
|
**See complete details below ↓**
|
|
59
89
|
|
|
@@ -61,6 +91,20 @@
|
|
|
61
91
|
|
|
62
92
|
## Detailed Commands
|
|
63
93
|
|
|
94
|
+
### `task-flow: from contexts`
|
|
95
|
+
Reads files in `.task-flow/contexts/` (images, PDF, text, JSON, etc.) and **appends** task lines to `tasks.input.txt`.
|
|
96
|
+
|
|
97
|
+
**Flow:** add context files → `from contexts` → `sync` → `run`.
|
|
98
|
+
|
|
99
|
+
**Variants:**
|
|
100
|
+
- `task-flow: from contexts` — all context files not yet linked in `tasks.input.txt`
|
|
101
|
+
- `task-flow: from contexts login-mockup.png` — one file
|
|
102
|
+
- `task-flow: from contexts mockup.png,spec.md` — comma-separated list
|
|
103
|
+
|
|
104
|
+
Each new line uses `task-flow-screen filename.ext` so sync/run attach the right context to subtasks.
|
|
105
|
+
|
|
106
|
+
Invoke: `@task-flow-from-contexts` / `/task-flow-from-contexts`.
|
|
107
|
+
|
|
64
108
|
### `task-flow: sync`
|
|
65
109
|
Complete synchronization between `tasks.input.txt` and the system:
|
|
66
110
|
- ✅ Adds new tasks from `tasks.input.txt`
|
|
@@ -69,9 +113,6 @@ Complete synchronization between `tasks.input.txt` and the system:
|
|
|
69
113
|
- ✅ Preserves status (done/pending) of existing tasks
|
|
70
114
|
- ✅ Synchronizes status between `status.json` and `tasks.status.md` (ensures they are always aligned)
|
|
71
115
|
|
|
72
|
-
### `task-flow: think`
|
|
73
|
-
Analyzes code and suggests new tasks. Asks before adding to `tasks.input.txt`.
|
|
74
|
-
|
|
75
116
|
### `task-flow: validate`
|
|
76
117
|
Deep validation: checks subtasks against the codebase, reverts false `done`, appends lacunas to `tasks.input.txt`, and syncs. Invoke: `@task-flow-validate` / `/task-flow-validate`.
|
|
77
118
|
|
|
@@ -81,15 +122,6 @@ Shows current status of tasks and subtasks from the `tasks.status.md` file.
|
|
|
81
122
|
### `task-flow: audit`
|
|
82
123
|
Audits the **entire codebase** against the **checklist** in [coding_standards.mdc](../.cursor/rules/coding_standards.mdc). Deep reference: [guides/coding-standards-full.md](guides/coding-standards-full.md) (sections only, on demand). Non-destructive: reports gaps and suggests incremental improvements; the user chooses what to adopt. See [task_audit.mdc](../.cursor/rules/task_audit.mdc) for the full flow.
|
|
83
124
|
|
|
84
|
-
### `task-flow: check`
|
|
85
|
-
Runs **lint fix** and **build** for the project. Check `package.json` for a lint-with-fix script (e.g. `lint:fix`, `lint -- --fix`) and a build script; run lint fix first, fix any warnings or errors, then run build and fix until it passes. Use before committing or before `task-flow: improve changes` to ensure the project is clean.
|
|
86
|
-
|
|
87
|
-
### `task-flow: improve changes`
|
|
88
|
-
Same as **task-flow: audit**, but **only for files that were changed and not yet committed** (unstaged + staged). The AI obtains the list via `git diff --name-only HEAD`, and scores those paths against the **checklist** in `coding_standards.mdc` (not the full standards doc unless depth is needed). Use before committing. Does **not** run lint or build — use `task-flow: check` for that.
|
|
89
|
-
|
|
90
|
-
### `rbin-task-flow audit` (CLI only)
|
|
91
|
-
Lists **unstaged** file paths (modified but not yet `git add`). Run in the project root: `rbin-task-flow audit`. Option: `-p, --path <path>`.
|
|
92
|
-
|
|
93
125
|
---
|
|
94
126
|
|
|
95
127
|
## Commands with Task ID
|
|
@@ -115,37 +147,22 @@ Executes all pending subtasks of a specific task. Implements and marks as "done"
|
|
|
115
147
|
- `task-flow: run all` → All pending subtasks of all tasks
|
|
116
148
|
- `task-flow: run 3` → Only executes if tasks 1 and 2 are complete
|
|
117
149
|
|
|
118
|
-
### `task-flow: review X`
|
|
119
|
-
Reviews specific task(s) marked as "done" to verify they are actually completed.
|
|
120
|
-
|
|
121
|
-
**Examples:**
|
|
122
|
-
- `task-flow: review 1` → Reviews task 1
|
|
123
|
-
- `task-flow: review 10,11` → Reviews tasks 10 and 11
|
|
124
|
-
- `task-flow: review all` → Reviews all tasks
|
|
125
|
-
|
|
126
|
-
### `task-flow: refactor X`
|
|
127
|
-
Refactors code from specific task(s). Removes explanatory comments, improves code without changing functionality.
|
|
128
|
-
|
|
129
|
-
**Examples:**
|
|
130
|
-
- `task-flow: refactor 1` → Refactors task 1
|
|
131
|
-
- `task-flow: refactor 10,11` → Refactors tasks 10 and 11
|
|
132
|
-
- `task-flow: refactor all` → Refactors all tasks
|
|
133
|
-
|
|
134
150
|
### `task-flow: estimate X` (simplified syntax)
|
|
135
151
|
Estimates time required to complete task(s) based on the real complexity of the task, assuming an average developer working at an average pace without AI acceleration. Subtask count informs scope, but is not the sole criterion.
|
|
136
152
|
|
|
153
|
+
**Syntax:** one ID (`1`), comma-separated IDs (`10,11`), or `all`.
|
|
154
|
+
|
|
137
155
|
**Output includes:**
|
|
138
156
|
- A single estimate range for the majority of developers
|
|
139
157
|
- Estimates in hours and business days
|
|
140
158
|
- Recommendation for management with buffer
|
|
141
159
|
|
|
142
160
|
**Examples:**
|
|
143
|
-
- `task-flow: estimate 1` →
|
|
144
|
-
- `task-flow: estimate 10,11` →
|
|
145
|
-
- `task-flow: estimate all` →
|
|
161
|
+
- `task-flow: estimate 1` → time estimate for task 1
|
|
162
|
+
- `task-flow: estimate 10,11` → time estimates for tasks 10 and 11
|
|
163
|
+
- `task-flow: estimate all` → time estimates for all tasks
|
|
146
164
|
|
|
147
|
-
|
|
148
|
-
Populates `tasks.flow.md` with: (1) task dependencies (for parallelization), (2) estimated hours, and (3) AI model recommendations (GPT-5.x, Composer, Claude) with effort levels. Model ranking and effort must be defined by the AI from task context, not from a fixed order or only from subtask count. Run after `task-flow: sync` when you want to know which tasks can run in parallel and which model/effort to use.
|
|
165
|
+
**CLI:** `rbin-task-flow estimate 1` · `rbin-task-flow estimate 1,2` · `rbin-task-flow estimate all`
|
|
149
166
|
|
|
150
167
|
### `task-flow: report X` (simplified syntax)
|
|
151
168
|
Generates a detailed implementation report for completed task(s) in Markdown format.
|
|
@@ -30,12 +30,11 @@ Os comandos `task-flow: …` são **os mesmos** em Claude Code, Cursor e Codex.
|
|
|
30
30
|
|
|
31
31
|
## Fluxo comum (todas as plataformas)
|
|
32
32
|
|
|
33
|
-
1.
|
|
33
|
+
1. Definir tasks: editar `tasks.input.txt` **ou** colocar specs em `contexts/` e rodar `task-flow: from contexts`
|
|
34
34
|
2. `task-flow: sync`
|
|
35
35
|
3. `task-flow: status`
|
|
36
36
|
4. `task-flow: run next X` ou `task-flow: run N`
|
|
37
|
-
5. `
|
|
38
|
-
6. **Você** faz `git commit` (a IA só sugere)
|
|
37
|
+
5. **Você** faz `git commit` (a IA só sugere)
|
|
39
38
|
|
|
40
39
|
Detalhes dos comandos: [README.md](../README.md).
|
|
41
40
|
|
|
@@ -56,7 +55,7 @@ Detalhes dos comandos: [README.md](../README.md).
|
|
|
56
55
|
| `.codex/config.toml` | — | — | ✅ (opcional, preservado no update) |
|
|
57
56
|
| `task-flow-cursor.mdc` | — | ✅ always-on | — |
|
|
58
57
|
| `rbin-git-policy.mdc` | — | ✅ always-on | — |
|
|
59
|
-
| `.claude/skills/` | ✅ (
|
|
58
|
+
| `.claude/skills/` | ✅ (10 skills) | — | — |
|
|
60
59
|
| `.cursor/skills/` | — | ✅ (espelho) | — |
|
|
61
60
|
|
|
62
61
|
Por padrão, `.claude/`, `.cursor/`, `.task-flow/`, `CLAUDE.md` e `AGENTS.md` entram no **`.gitignore`** do projeto cliente. Para versionar skills/regras com o time, ajuste o ignore — veja a seção “Versionamento” em cada guia.
|
|
@@ -67,10 +66,10 @@ Por padrão, `.claude/`, `.cursor/`, `.task-flow/`, `CLAUDE.md` e `AGENTS.md` en
|
|
|
67
66
|
|
|
68
67
|
Com o [Graphify](https://pypi.org/project/graphifyyy/) instalado (`rbin-install-dev`), o Task Flow inclui integração cooperativa:
|
|
69
68
|
|
|
70
|
-
- Regra **`.cursor/rules/graphify-task-flow.mdc`** — só quando `task-flow: run`, `
|
|
71
|
-
-
|
|
69
|
+
- Regra **`.cursor/rules/graphify-task-flow.mdc`** — só quando `task-flow: run`, `validate`, etc. precisam navegar o código (`alwaysApply: false`).
|
|
70
|
+
- Grafo em **`.task-flow/guides/graphify-out/`** (dentro de `.task-flow/`, já gitignored).
|
|
72
71
|
- Rebaixa **`graphify.mdc`** upstream para `alwaysApply: false` se existir.
|
|
73
|
-
- **`rbin-task-flow init --graphify`** — roda `graphify extract . --backend claude-cli` após o init.
|
|
72
|
+
- **`rbin-task-flow init --graphify`** — roda `graphify extract . --backend claude-cli --out .task-flow/guides` após o init.
|
|
74
73
|
|
|
75
74
|
Guia completo: [GRAPHIFY.md](GRAPHIFY.md).
|
|
76
75
|
|