rbin-task-flow 1.23.0 → 1.23.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/.cursor/rules/graphify-task-flow.mdc +2 -2
- package/.task-flow/AI-PLATFORMS.md +1 -1
- package/.task-flow/GRAPHIFY.md +5 -4
- package/.task-flow/platforms/cursor.md +1 -1
- package/README.md +6 -6
- package/bin/cli.js +3 -3
- package/lib/graphify.js +8 -4
- package/lib/utils.js +1 -1
- package/package.json +1 -1
|
@@ -8,7 +8,7 @@ alwaysApply: false
|
|
|
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 in a non-trivial codebase, if `graphify-out/graph.json` exists, use `graphify query "<feature or module from subtask>"` or read `graphify-out/GRAPH_REPORT.md` god nodes — then implement. If no graph exists, proceed with normal search or suggest `graphify extract
|
|
11
|
+
- **`task-flow: run` / `run next X`:** Before implementing a subtask in a non-trivial codebase, if `graphify-out/graph.json` exists, use `graphify query "<feature or module from subtask>"` or read `graphify-out/GRAPH_REPORT.md` god nodes — then implement. If no graph exists, proceed with normal search or suggest `graphify extract . --backend claude-cli` (or `rbin-task-flow init --graphify`).
|
|
12
12
|
- **`task-flow: think`:** Optional `graphify query` for gap analysis on large repos.
|
|
13
13
|
- **`task-flow: review X`:** Optional `graphify affected "<symbol>"` to verify impact surface.
|
|
14
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/docs/coding-standards-full.md) only if user asks for depth.
|
|
@@ -23,7 +23,7 @@ alwaysApply: false
|
|
|
23
23
|
- RBIN Task Flow init sets upstream `graphify.mdc` to `alwaysApply: false` to save context.
|
|
24
24
|
|
|
25
25
|
- **CLI (project root):**
|
|
26
|
-
- Build graph: `graphify extract
|
|
26
|
+
- Build graph: `graphify extract . --backend claude-cli` or `rbin-task-flow init --graphify` (re-run after large refactors).
|
|
27
27
|
- Query: `graphify query "question"` · `graphify affected "node"`.
|
|
28
28
|
- Guide: [.task-flow/GRAPHIFY.md](mdc:.task-flow/GRAPHIFY.md)
|
|
29
29
|
|
|
@@ -70,7 +70,7 @@ Com o [Graphify](https://pypi.org/project/graphifyyy/) instalado (`rbin-install-
|
|
|
70
70
|
- Regra **`.cursor/rules/graphify-task-flow.mdc`** — só quando `task-flow: run`, `think`, `review`, etc. precisam navegar o código (`alwaysApply: false`).
|
|
71
71
|
- **`graphify-out/`** no `.gitignore`.
|
|
72
72
|
- Rebaixa **`graphify.mdc`** upstream para `alwaysApply: false` se existir.
|
|
73
|
-
- **`rbin-task-flow init --graphify`** — roda `graphify extract
|
|
73
|
+
- **`rbin-task-flow init --graphify`** — roda `graphify extract . --backend claude-cli` após o init.
|
|
74
74
|
|
|
75
75
|
Guia completo: [GRAPHIFY.md](GRAPHIFY.md).
|
|
76
76
|
|
package/.task-flow/GRAPHIFY.md
CHANGED
|
@@ -31,7 +31,7 @@ Graphify ([graphifyy](https://pypi.org/project/graphifyyy/)) cria um **grafo de
|
|
|
31
31
|
1. Copia **`.cursor/rules/graphify-task-flow.mdc`** — `alwaysApply: false` (não compete com `task_work`, etc.).
|
|
32
32
|
2. Adiciona **`graphify-out/`** ao `.gitignore`.
|
|
33
33
|
3. Se existir **`.cursor/rules/graphify.mdc`** do `graphify cursor install` (upstream com `alwaysApply: true`), o instalador **desativa** `alwaysApply` para economizar contexto.
|
|
34
|
-
4. Com **`--graphify`** em `init`, `update` ou **`reset`**, roda `graphify extract
|
|
34
|
+
4. Com **`--graphify`** em `init`, `update` ou **`reset`**, roda `graphify extract . --backend claude-cli` se o CLI estiver no PATH (usa assinatura Claude Code — sem API key separada).
|
|
35
35
|
|
|
36
36
|
**Não** rodamos `graphify claude install` / `graphify cursor install` automaticamente — o install upstream força `graphify.mdc` always-on e incham `CLAUDE.md` / `AGENTS.md`.
|
|
37
37
|
|
|
@@ -87,9 +87,9 @@ task-flow: run next 2 — se graphify-out existir, graphify query "<módulo da s
|
|
|
87
87
|
|
|
88
88
|
| Evento | Ação |
|
|
89
89
|
|--------|------|
|
|
90
|
-
| Primeiro setup | `
|
|
90
|
+
| Primeiro setup | `rbin-task-flow init --graphify` ou `graphify extract . --backend claude-cli` |
|
|
91
91
|
| Reset completo (tasks + template + grafo) | `rbin-task-flow reset --graphify` |
|
|
92
|
-
| Refactor grande após vários `run` | `graphify update .` ou `graphify extract
|
|
92
|
+
| Refactor grande após vários `run` | `graphify update .` ou `graphify extract . --backend claude-cli` |
|
|
93
93
|
| `task-flow: update` | Reaplica `graphify-task-flow.mdc` e pode rebaixar `graphify.mdc` |
|
|
94
94
|
|
|
95
95
|
---
|
|
@@ -101,7 +101,8 @@ task-flow: run next 2 — se graphify-out existir, graphify query "<módulo da s
|
|
|
101
101
|
| IA ignora `task-flow:` | Graphify não é a causa — verifique rules Task Flow |
|
|
102
102
|
| Contexto cheio no Cursor | Confirme `graphify.mdc` não está `alwaysApply: true` |
|
|
103
103
|
| `graphify: command not found` | Rode `rbin-install-dev` (módulo Graphify) |
|
|
104
|
-
|
|
|
104
|
+
| `no LLM API key found` ao rodar `graphify extract .` manual | Use `rbin-task-flow init --graphify` (roda `--backend claude-cli`) ou exporte uma API key / `--backend ollama` |
|
|
105
|
+
| Grafo desatualizado | `graphify extract . --backend claude-cli` de novo |
|
|
105
106
|
|
|
106
107
|
---
|
|
107
108
|
|
|
@@ -259,7 +259,7 @@ Cursor também pode ler `AGENTS.md` em alguns fluxos; no RBIN ele é focado em *
|
|
|
259
259
|
| `rbin-task-flow init` | Copia rules + task-flow |
|
|
260
260
|
| `rbin-task-flow update` | Atualiza rules; preserva `.internal/` |
|
|
261
261
|
| `rbin-task-flow reset` | Recria `.task-flow` do zero |
|
|
262
|
-
| `rbin-task-flow reset --graphify` | Reset + `graphify extract
|
|
262
|
+
| `rbin-task-flow reset --graphify` | Reset + `graphify extract . --backend claude-cli` |
|
|
263
263
|
| `rbin-task-flow audit` | Lista arquivos **unstaged** (não substitui `task-flow: improve changes`) |
|
|
264
264
|
|
|
265
265
|
O Agent executa o workflow; o CLI prepara arquivos.
|
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
<a id="português"></a>
|
|
34
34
|
# 🇧🇷 Português
|
|
35
35
|
|
|
36
|
-
> **v1.23.
|
|
36
|
+
> **v1.23.1** — Graphify `--graphify` usa `claude-cli` por padrão (sem API key extra). De **1.23.0**: `npm install -g rbin-task-flow@1.23.1` e `rbin-task-flow update`. [CHANGELOG](CHANGELOG.md) · [Publicação](RELEASE-1.23.1.md).
|
|
37
37
|
|
|
38
38
|
## O Que É Este Projeto?
|
|
39
39
|
|
|
@@ -77,7 +77,7 @@ rbin-task-flow init --share-ai-config # Versiona .cursor/skills/ e .cursor/rule
|
|
|
77
77
|
rbin-task-flow update # Atualiza configurações (mantém profile em install-meta.json)
|
|
78
78
|
rbin-task-flow update --profile standard # Passa a copiar todas as regras .mdc
|
|
79
79
|
rbin-task-flow reset # Reinstala o Task Flow do zero
|
|
80
|
-
rbin-task-flow reset --graphify # Reset + graphify extract (CLI Graphify no PATH)
|
|
80
|
+
rbin-task-flow reset --graphify # Reset + graphify extract --backend claude-cli (CLI Graphify no PATH)
|
|
81
81
|
rbin-task-flow version-check # Verifica atualizações de modelos
|
|
82
82
|
rbin-task-flow info # Mostra informações
|
|
83
83
|
rbin-task-flow check # Roda lint/fix e build quando existirem
|
|
@@ -91,7 +91,7 @@ Após inicializar, use estes comandos na IA (Cursor/Claude/Codex) para gerenciar
|
|
|
91
91
|
|
|
92
92
|
**Otimizar por plataforma:** [.task-flow/AI-PLATFORMS.md](.task-flow/AI-PLATFORMS.md) · [Claude](.task-flow/platforms/claude-code.md) · [Cursor](.task-flow/platforms/cursor.md) · [Codex](.task-flow/platforms/codex.md) · [Graphify](.task-flow/GRAPHIFY.md)
|
|
93
93
|
|
|
94
|
-
**Graphify (opcional):** `rbin-task-flow init --graphify` configura coexistência e
|
|
94
|
+
**Graphify (opcional):** `rbin-task-flow init --graphify` configura coexistência e roda `graphify extract . --backend claude-cli` (CLI via `rbin-install-dev`; usa assinatura Claude Code).
|
|
95
95
|
|
|
96
96
|
**Claude Code / Cursor skills (v1.20+):** `init` copia 14 skills para `.claude/skills/` e `.cursor/skills/` — use `/task-flow-sync`, `/task-flow-run`, etc.
|
|
97
97
|
|
|
@@ -418,7 +418,7 @@ Para problemas ou perguntas:
|
|
|
418
418
|
<a id="english"></a>
|
|
419
419
|
# 🇬🇧 English
|
|
420
420
|
|
|
421
|
-
> **v1.23.
|
|
421
|
+
> **v1.23.1** — Graphify `--graphify` defaults to `claude-cli` (no separate API key). From **1.23.0**: `npm install -g rbin-task-flow@1.23.1` then `rbin-task-flow update`. [CHANGELOG](CHANGELOG.md) · [Release guide](RELEASE-1.23.1.md).
|
|
422
422
|
|
|
423
423
|
## What Is This Project?
|
|
424
424
|
|
|
@@ -462,7 +462,7 @@ rbin-task-flow init --share-ai-config # Commit .cursor/skills and rules with th
|
|
|
462
462
|
rbin-task-flow update # Update configs (keeps profile from .task-flow/install-meta.json)
|
|
463
463
|
rbin-task-flow update --profile standard # Install all .cursor/rules/*.mdc
|
|
464
464
|
rbin-task-flow reset # Reinstall Task Flow from scratch
|
|
465
|
-
rbin-task-flow reset --graphify # Reset + graphify extract (Graphify CLI on PATH)
|
|
465
|
+
rbin-task-flow reset --graphify # Reset + graphify extract --backend claude-cli (Graphify CLI on PATH)
|
|
466
466
|
rbin-task-flow version-check # Check for model updates
|
|
467
467
|
rbin-task-flow info # Show information
|
|
468
468
|
rbin-task-flow check # Run lint/fix and build when available
|
|
@@ -476,7 +476,7 @@ After initializing, use these commands in your AI (Cursor/Claude/Codex) to autom
|
|
|
476
476
|
|
|
477
477
|
**Per-platform optimization:** [index](.task-flow/AI-PLATFORMS.md) · [Claude](.task-flow/platforms/claude-code.md) · [Cursor](.task-flow/platforms/cursor.md) · [Codex](.task-flow/platforms/codex.md) · [Graphify](.task-flow/GRAPHIFY.md)
|
|
478
478
|
|
|
479
|
-
**Graphify (optional):** `rbin-task-flow init --graphify` — cooperative setup +
|
|
479
|
+
**Graphify (optional):** `rbin-task-flow init --graphify` — cooperative setup + runs `graphify extract . --backend claude-cli` (CLI from `rbin-install-dev`; uses Claude Code subscription).
|
|
480
480
|
|
|
481
481
|
**Claude / Cursor skills (v1.20+):** installs 14 skills — use `/task-flow-sync`, `/task-flow-run`, etc.
|
|
482
482
|
|
package/bin/cli.js
CHANGED
|
@@ -21,7 +21,7 @@ function addInstallCommand(name, description, extra = {}) {
|
|
|
21
21
|
.command(name)
|
|
22
22
|
.description(description)
|
|
23
23
|
.option('-p, --path <path>', 'Target directory (default: current directory)')
|
|
24
|
-
.option('-g, --graphify', 'Run graphify extract after install (requires graphify CLI)')
|
|
24
|
+
.option('-g, --graphify', 'Run graphify extract . --backend claude-cli after install (requires graphify CLI)')
|
|
25
25
|
.option(
|
|
26
26
|
'--profile <profile>',
|
|
27
27
|
'Cursor rules: minimal (2 always-on + skills) or standard (all rules); update without flag keeps .task-flow/install-meta.json'
|
|
@@ -112,10 +112,10 @@ program
|
|
|
112
112
|
console.log(chalk.cyan(' rbin-task-flow init') + ' - Initialize in current directory');
|
|
113
113
|
console.log(chalk.cyan(' rbin-task-flow init --profile minimal') + ' - Low-token install (2 always-on rules + skills)');
|
|
114
114
|
console.log(chalk.cyan(' rbin-task-flow init --share-ai-config') + ' - Version .cursor/skills and rules in git');
|
|
115
|
-
console.log(chalk.cyan(' rbin-task-flow init --graphify') + ' - Init + graphify extract (if CLI installed)');
|
|
115
|
+
console.log(chalk.cyan(' rbin-task-flow init --graphify') + ' - Init + graphify extract --backend claude-cli (if CLI installed)');
|
|
116
116
|
console.log(chalk.cyan(' rbin-task-flow update') + ' - Update configurations');
|
|
117
117
|
console.log(chalk.cyan(' rbin-task-flow reset') + ' - Reset task flow files from scratch');
|
|
118
|
-
console.log(chalk.cyan(' rbin-task-flow reset --graphify') + ' - Reset + graphify extract (if CLI installed)');
|
|
118
|
+
console.log(chalk.cyan(' rbin-task-flow reset --graphify') + ' - Reset + graphify extract --backend claude-cli (if CLI installed)');
|
|
119
119
|
console.log(chalk.cyan(' rbin-task-flow version-check') + ' - Check for model updates');
|
|
120
120
|
console.log(chalk.cyan(' rbin-task-flow estimate <ids>') + ' - Estimate time (e.g., "1" or "1,2" or "all")');
|
|
121
121
|
console.log(chalk.cyan(' rbin-task-flow report <ids>') + ' - Generate report (e.g., "1" or "1,2" or "all")');
|
package/lib/graphify.js
CHANGED
|
@@ -5,6 +5,8 @@ const { showSuccess, showWarning, showInfo } = require('./utils');
|
|
|
5
5
|
|
|
6
6
|
const GRAPHIFY_OUT = 'graphify-out/';
|
|
7
7
|
const UPSTREAM_GRAPHIFY_RULE = 'graphify.mdc';
|
|
8
|
+
const GRAPHIFY_EXTRACT_CMD = 'graphify extract . --backend claude-cli';
|
|
9
|
+
const GRAPHIFY_EXTRACT_ARGS = ['extract', '.', '--backend', 'claude-cli'];
|
|
8
10
|
|
|
9
11
|
function graphifyCliAvailable() {
|
|
10
12
|
const result = spawnSync('graphify', ['--help'], {
|
|
@@ -70,15 +72,15 @@ function runGraphifyExtract(targetPath) {
|
|
|
70
72
|
return false;
|
|
71
73
|
}
|
|
72
74
|
|
|
73
|
-
showInfo(
|
|
74
|
-
const result = spawnSync('graphify',
|
|
75
|
+
showInfo(`Running ${GRAPHIFY_EXTRACT_CMD} (may take a few minutes)...`);
|
|
76
|
+
const result = spawnSync('graphify', GRAPHIFY_EXTRACT_ARGS, {
|
|
75
77
|
cwd: targetPath,
|
|
76
78
|
encoding: 'utf8',
|
|
77
79
|
stdio: 'inherit',
|
|
78
80
|
});
|
|
79
81
|
|
|
80
82
|
if (result.status !== 0) {
|
|
81
|
-
showWarning(
|
|
83
|
+
showWarning(`graphify extract failed — you can run it later: ${GRAPHIFY_EXTRACT_CMD}`);
|
|
82
84
|
return false;
|
|
83
85
|
}
|
|
84
86
|
|
|
@@ -102,7 +104,7 @@ async function setupGraphifyIntegration(targetPath, options = {}) {
|
|
|
102
104
|
} else if (graphifyCliAvailable()) {
|
|
103
105
|
const graphJson = path.join(targetPath, 'graphify-out', 'graph.json');
|
|
104
106
|
if (!fs.existsSync(graphJson)) {
|
|
105
|
-
showInfo(
|
|
107
|
+
showInfo(`Graphify CLI detected — run: ${GRAPHIFY_EXTRACT_CMD} (or: rbin-task-flow init --graphify)`);
|
|
106
108
|
}
|
|
107
109
|
}
|
|
108
110
|
|
|
@@ -115,4 +117,6 @@ module.exports = {
|
|
|
115
117
|
ensureGraphifyGitignore,
|
|
116
118
|
runGraphifyExtract,
|
|
117
119
|
graphifyCliAvailable,
|
|
120
|
+
GRAPHIFY_EXTRACT_CMD,
|
|
121
|
+
GRAPHIFY_EXTRACT_ARGS,
|
|
118
122
|
};
|
package/lib/utils.js
CHANGED
|
@@ -78,7 +78,7 @@ function showNextSteps(targetPath) {
|
|
|
78
78
|
console.log(chalk.blue(' 3.'), 'Run:', chalk.cyan('task-flow: run next X'), chalk.gray('· @task-flow-run'));
|
|
79
79
|
console.log(chalk.blue(' 4.'), 'Check status:', chalk.cyan('task-flow: status'));
|
|
80
80
|
console.log(chalk.blue(' 5.'), 'Codex:', chalk.gray('AGENTS.md + .task-flow/CODEX.md on demand'));
|
|
81
|
-
console.log(chalk.blue(' 6.'), 'Optional Graphify:', chalk.yellow('
|
|
81
|
+
console.log(chalk.blue(' 6.'), 'Optional Graphify:', chalk.yellow('rbin-task-flow init --graphify'), chalk.gray('— .task-flow/GRAPHIFY.md'));
|
|
82
82
|
console.log(chalk.cyan('═'.repeat(60)));
|
|
83
83
|
console.log(chalk.blue('\n See'), chalk.yellow('.task-flow/README.md'), chalk.blue('for all available commands\n'));
|
|
84
84
|
}
|