nrslib
47612d9dcc
refactor: agent-usecases / schema-loader の移動と pieceExecution の責務分割
...
- agent-usecases.ts を core/piece/ → agents/ へ移動
- schema-loader.ts を core/piece/ → infra/resources/ へ移動
- interactive-summary-types.ts を分離、shared/types/ ディレクトリを追加
- pieceExecution.ts を abortHandler / analyticsEmitter / iterationLimitHandler / outputFns / runMeta / sessionLogger に分割
- buildMergeFn を async → sync に変更(custom merge の file 戦略を削除)
- cleanupOrphanedClone にパストラバーサル保護を追加
- review-fix / frontend-review-fix ピースの IT テストを追加
2026-03-02 21:20:50 +09:00
nrslib
783ace35bd
fix: review-fix をピースカテゴリのレビューに追加
2026-03-02 17:41:45 +09:00
nrslib
d3ac5cc17c
fix: --auto-pr/--draft をパイプラインモード専用に制限
...
インタラクティブモードでの PR 自動作成プロンプト(resolveAutoPr / resolveDraftPr)を削除し、
--auto-pr / --draft はパイプラインモードでのみ有効になるよう制限する。
SelectAndExecuteOptions から repo / branch / issues フィールドも削除。
2026-03-02 17:37:46 +09:00
nrslib
fa222915ea
feat: 多角レビュー+修正ループピース(review-fix)を追加
...
review ピースをベースに、レビュー指摘があった場合に fix → reviewers のループで修正を繰り返す review-fix ピースを追加。
2026-03-02 16:20:13 +09:00
nrslib
71772765a6
feat: フロントエンド/バックエンド/デュアル/CQRS+ES 特化のレビュー専用・レビュー修正ループピースを追加
...
- frontend/backend/dual/dual-cqrs/backend-cqrs の review 専用ピース(gather → reviewers → supervise)を追加
- 同5種の review-fix ピース(gather → reviewers ↔ fix → supervise)を追加
- review-arch インストラクションにモジュール化・関数化観点を明示的に追加
- 🔍 レビューカテゴリに10ピースを追加
2026-03-02 16:20:13 +09:00
Takashi Morikubo
50935a1244
Remove worktree prompt from execute action ( #414 )
...
* fix: remove execute worktree prompt and deprecate create-worktree option
* test(e2e): align specs with removed --create-worktree
* fix: remove execute worktree leftovers and align docs/tests
---------
Co-authored-by: Takashi Morikubo <azurite0107@gmail.com>
2026-03-02 16:12:18 +09:00
nrslib
769bd98724
fix: avoid leading-boundary flush before complete boundary
2026-03-02 15:14:01 +09:00
nrslib
872ff5fa36
feat: decomposeTask / requestMoreParts / judgeStatus にプロバイダーイベントロギングを追加
...
onStream を各オプション型に追加し、runAgent 呼び出しに伝播させる。
これにより team_leader の分解フェーズや Phase 3 判定のイベントが
provider-events.jsonl に記録されるようになる。
変更ファイル:
- agent-usecases.ts: JudgeStatusOptions / DecomposeTaskOptions に onStream 追加
- phase-runner.ts: PhaseRunnerContext に onStream 追加
- status-judgment-phase.ts: judgeStatus に ctx.onStream を渡す
- OptionsBuilder.ts: buildPhaseRunnerContext の戻り値に onStream を含める
- TeamLeaderRunner.ts: decomposeTask / requestMoreParts に engineOptions.onStream を渡す
2026-03-02 14:24:57 +09:00
nrslib
b999ae4a4b
fix: decomposeTask / requestMoreParts の maxTurns を 2 → 4 に増加
...
structured output の再試行余裕を確保するため。
maxTurns: 2 だと長いタスク分解で詰まる可能性があった。
2026-03-02 14:20:06 +09:00
nrslib
bddb66f85d
fix: avoid leading-boundary timed flush fragmentation
2026-03-02 14:18:28 +09:00
nrslib
52968ac873
fix: team leader エラーメッセージが空になるバグを修正
...
error と content が共に空の場合、status をフォールバックとして使用する。
?? 演算子は空文字をフォールバックしないため || に変更。
2026-03-02 14:18:28 +09:00
nrs
1a890792f1
Merge pull request #449 from nrslib/release/v0.28.1
...
Release v0.28.1
2026-03-02 14:01:27 +09:00
nrslib
2d8d1d4afe
Release v0.28.1
v0.28.1
2026-03-02 13:59:35 +09:00
nrslib
0201056f34
docs: 全ドキュメントに copilot プロバイダーを追加し、Claude Code 寄りの記述をプロバイダー中立に修正
2026-03-02 13:17:09 +09:00
nrslib
532b1961a7
refactor: expert → dual リネーム、未使用ピース削除、default 統合
...
- expert/expert-mini/expert-cqrs/expert-cqrs-mini を dual 系にリネーム
(「フルスタック」→「フロントエンド+バックエンド」に説明も修正)
- expert-supervisor ペルソナを dual-supervisor にリネーム
- passthrough, structural-reform ピースを削除
- default-mini, default-test-first-mini を default に統合
- coding-pitfalls ナレッジの主要項目を coding ポリシーに移動し削除
- implement/plan インストラクションにセルフチェック・コーダー指針を追加
- builtin カタログに不足していた terraform, takt-default 系を追加
- deep-research をカテゴリに追加
2026-03-02 13:15:51 +09:00
nrs
658aebfcee
Merge pull request #442 from nrslib/release/v0.28.0
...
Release v0.28.0
2026-03-02 09:14:03 +09:00
nrslib
3acd30cc53
Release v0.28.0
v0.28.0
2026-03-02 09:00:10 +09:00
nrs
501639f6b5
Merge pull request #433 from nrslib/release/v0.28.0-alpha.1
...
Release v0.28.0-alpha.1
2026-02-28 22:08:38 +09:00
nrslib
9ce4358e9d
Release v0.28.0-alpha.1
v0.28.0-alpha.1
2026-02-28 22:01:34 +09:00
nrs
8f0f546928
[ #426 ] add-pr-review-task ( #427 )
...
* takt: add-pr-review-task
* fix: add コマンドの DRY 違反を修正
if/else で addTask を引数の有無のみ変えて呼び分けていた
冗長な分岐を三項演算子で統一。テストのアサーションも更新。
* fix: レビュー Warning 4件を修正
- addTask.test.ts: 冗長な Ref エイリアスを削除し直接参照に統一
- addTask.test.ts: mockRejectedValue を mockImplementation(throw) に変更
(fetchPrReviewComments は同期メソッドのため)
- index.ts: addTask の JSDoc Flow コメントを復元(PR フロー追加)
- issueTask.ts: extractTitle / createIssueFromTask の JSDoc を移植
2026-02-28 21:56:00 +09:00
nrslib
2be824b231
fix: PRコメント投稿ステップにも GH_REPO を設定
...
fork PR のレビュー結果投稿時に gh pr comment が fork 側を
参照して失敗する問題を修正。takt 実行ステップと同様に
GH_REPO: github.repository を env に追加。
2026-02-28 21:55:22 +09:00
Tomohisa Takaoka
17232f9940
feat: add GitHub Copilot CLI as a new provider ( #425 )
...
* feat: add GitHub Copilot CLI as a new provider
Add support for GitHub Copilot CLI (@github/copilot) as a takt provider,
enabling the 'copilot' command to be used for AI-driven task execution.
New files:
- src/infra/copilot/client.ts: CLI client with streaming, session ID
extraction via --share, and permission mode mapping
- src/infra/copilot/types.ts: CopilotCallOptions type definitions
- src/infra/copilot/index.ts: barrel exports
- src/infra/providers/copilot.ts: CopilotProvider implementing Provider
- src/__tests__/copilot-client.test.ts: 20 unit tests for client
- src/__tests__/copilot-provider.test.ts: 8 unit tests for provider
Key features:
- Spawns 'copilot -p' in non-interactive mode with --silent --no-color
- Permission modes: full (--yolo), edit (--allow-all-tools --no-ask-user),
readonly (no permission flags)
- Session ID extraction from --share transcript files
- Real-time stdout streaming via onStream callbacks
- Configurable via COPILOT_CLI_PATH and COPILOT_GITHUB_TOKEN env vars
* fix: remove unused COPILOT_DEFAULT_MAX_AUTOPILOT_CONTINUES constant
* fix: address review feedback for copilot provider
- Remove excess maxAutopilotContinues property from test (#1 High)
- Extract cleanupTmpDir() helper to eliminate DRY violation (#2 Medium)
- Deduplicate chunk string conversion in stdout handler (#3 Medium)
- Remove 5 what/how comments that restate code (#4 Medium)
- Log readFile failure instead of silently swallowing (#5 Medium)
- Add credential scrubbing (ghp_/ghs_/gho_/github_pat_) for stderr (#6 Medium)
- Add buffer overflow tests for stdout and stderr (#7 Medium)
- Add pre-aborted AbortSignal test (#8 Low)
- Add mkdtemp failure fallback test (#9 Low)
- Add rm cleanup verification to fallback test (#10 Low)
- Log mkdtemp failure with debug level (#11 Persist)
- Add createLogger('copilot-client') for structured logging
2026-02-28 20:28:56 +09:00
nrslib
45663342c6
feat: ai-antipattern ポリシーに冗長な条件分岐パターン検出を追加
...
AI が生成しがちな if/else で同一関数を引数の有無のみ変えて
呼び出すパターンを REJECT 基準として定義。ai_review フェーズで
検出し、reviewers に到達する前に修正できるようにする。
既存のデッドコード例も TAKT 固有コードから汎用パターンに置換。
2026-02-28 17:48:10 +09:00
nrslib
ff31d9cb0c
fix: fork PR レビュー時に GH_REPO を設定して正しいリポジトリの issue を参照
2026-02-28 17:37:30 +09:00
nrslib
5fd9022caa
fix: takt-review を pull_request_target に変更して fork PR でもシークレットを利用可能に
...
- pull_request → pull_request_target でベースリポジトリのコンテキストで実行
- fork リポジトリからのチェックアウトに repository を追加
- ANTHROPIC_API_KEY が空の場合に即座にエラー終了するガードを追加
2026-02-28 17:34:41 +09:00
nrslib
e5665ed8cd
fix: takt-review のトリガーに reopened を追加
2026-02-28 15:29:00 +09:00
nrslib
929557aa86
fix: takt-review が fork PR で失敗する問題を修正
...
head.ref(ブランチ名)は fork のブランチを解決できないため head.sha に変更
2026-02-28 15:10:01 +09:00
nrslib
fb0b34386f
ci: pull_request の ready_for_review でもCIが走るように修正
2026-02-28 14:24:45 +09:00
nrs
9ba05d8598
[ #395 ] github-issue-395-add-pull-from ( #397 )
...
* takt: github-issue-395-add-pull-from
* ci: trigger CI checks
* fix: taskDiffActions のコンフリクトマーカーを解消
origin/main でリネームされた「Merge from root」ラベル(PR #394)と、
このPR (#395 ) で追加した「Pull from remote」行を統合する。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* ci: trigger CI checks
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: masanobu-naruse <m_naruse@codmon.co.jp>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-28 14:13:06 +09:00
nrslib
2d0dc127d0
refactor: cc-resolve をコンフリクト解決専用に変更
...
レビュー指摘対応の機能を削除し、コンフリクト解決のみに集中するように変更。
- Collect PR review comments ステップを削除
- プロンプトからレビュー関連セクションを削除
- コミット済みコンフリクトマーカーの検出を追加
- コミットメッセージを "fix: resolve merge conflicts" に変更
2026-02-28 14:08:04 +09:00
nrslib
88455b7594
fix: cc-resolve でマージコミットがあれば常に push するように修正
2026-02-28 13:48:49 +09:00
nrslib
8bb9ea4e8c
fix: cc-resolve の Resolve ステップに GH_TOKEN を追加
2026-02-28 13:47:33 +09:00
nrslib
d05cb43432
fix: cc-resolve で Claude にフル権限を付与 (--dangerously-skip-permissions)
2026-02-28 13:45:02 +09:00
nrslib
2a8cc50ba0
fix: cc-resolve でフォークPRをスキップし、同一リポジトリPRのみ対応
2026-02-28 13:29:22 +09:00
nrslib
e4af465d72
fix: cc-resolve の checkout 前ステップに --repo を追加し、プロンプトを /resolve の観点に忠実に修正
2026-02-28 13:26:57 +09:00
nrslib
f6d59f4209
fix: cc-resolve の checkout 前ステップに --repo を追加
2026-02-28 13:06:18 +09:00
Junichi Kato
fe0b7237a7
fix: 不正なtasks.yamlで削除せず停止するように修正 ( #418 )
...
* test: add regression coverage for invalid tasks.yaml preservation
* fix: keep invalid tasks.yaml untouched and fail fast
2026-02-28 13:02:03 +09:00
souki-kimura
ac4cb9c8a5
fix: fallback to normal clone when reference repository is shallow ( #376 ) ( #409 )
...
In shallow clone environments (e.g., DevContainer), `git clone --reference`
fails because Git cannot use a shallow repository as a reference. Add fallback
logic that detects the "reference repository is shallow" error and retries
without `--reference --dissociate`.
Co-authored-by: kimura <2023lmi-student009@la-study.com>
2026-02-28 13:01:18 +09:00
Yuma Satake
e77cb50ac1
feat: インタラクティブモードのスラッシュコマンドを行末でも認識可能にする ( #406 )
...
- スラッシュコマンド検出ロジックを commandMatcher.ts に分離
- 行頭・行末の両方でコマンドを認識し、行中は無視する仕様を実装
- conversationLoop を早期リターン + switch ディスパッチにリファクタリング
- SlashCommand 定数を shared/constants に追加
- コマンドマッチングのユニットテスト36件を追加
- 行末コマンド・行中非認識のE2Eテスト6件を追加
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 12:59:26 +09:00
nrslib
09fda82677
ci: PRコメント /resolve でコンフリクト解決・レビュー指摘修正を行うワークフローを追加
2026-02-28 12:56:43 +09:00
Junichi Kato
252c337456
fix: Global/ProjectのmodelがModelログに反映されない不具合を修正 ( #417 )
...
* test: add regression for movement model log fallback
* fix: use configured model for movement model logging
2026-02-28 12:54:32 +09:00
nrs
7494149e75
[ #421 ] github-issue-421-feat-pr-opush ( #422 )
...
* takt: github-issue-421-feat-pr-opush
* docs: CONTRIBUTING のレビューモード説明を復元
--pr オプション追加に伴い削除されていたブランチモード・現在の差分モードの
ドキュメントを復元。コントリビューターはPR作成前にローカルでレビューする
ケースもあるため、全モードの記載が必要。
* fix: --pr でリモートブランチを fetch してからチェックアウト
他人のPRブランチはローカルに存在しないため、git fetch origin を
実行してからチェックアウトするように修正。また baseBranch を返す
ようにして --auto-pr 併用時の問題も解消。
* refactor: routing の排他条件を if/else に整理、不要なフォールバック削除
- routing.ts: prNumber の排他的分岐を if/else に統合
- pr.ts: data.body は string 型なので ?? '' フォールバックを削除
2026-02-28 12:53:35 +09:00
nrs
e256db8dea
takt: github-issue-398-branchexists ( #401 )
2026-02-28 12:31:24 +09:00
nrs
ae74c0d595
takt: #391 resolveConfigValue の無意味な defaultValue を撲滅する ( #392 )
2026-02-28 12:29:24 +09:00
nrslib
6d50221dd5
ci: PRに対するTAKT Reviewワークフローを追加
...
Environment承認方式で、メンテナーが承認するまで実行されない。
レビュー結果はPRコメントとアーティファクトに出力。
2026-02-28 12:06:13 +09:00
nrslib
4e9c02091a
feat: add takt-default pieces and TAKT knowledge facet for self-development
...
- Add takt-default piece (5-parallel review, takt knowledge)
- Add takt-default-team-leader piece (team_leader implement variant)
- Add takt.md knowledge facet (EN/JA) covering TAKT architecture
- Add team-leader-implement instruction facet (EN/JA)
- Add TAKT Development category to piece-categories
2026-02-28 12:04:22 +09:00
nrslib
c7389a5b24
docs: add review mode examples to CONTRIBUTING
2026-02-28 09:48:23 +09:00
Junichi Kato
b8b64f858b
feat: プロジェクト単位のCLIパス設定(Claude/Cursor/Codex) ( #413 )
...
* feat: プロジェクト単位のCLIパス設定を支援するconfig層を追加
validateCliPath汎用関数、Global/Project設定スキーマ拡張、
env override、3プロバイダ向けresolve関数(env→project→global→undefined)を追加。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat: Claude/Cursor/CodexプロバイダにCLIパス解決を統合
各プロバイダのtoXxxOptions()でproject configを読み込み、
resolveXxxCliPath()経由でCLIパスを解決してSDKに渡す。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* test: per-project CLIパス機能のテストを追加
validateCliPath, resolveClaudeCliPath, resolveCursorCliPath,
resolveCodexCliPath(project config層)のユニットテスト、
および既存プロバイダテストのモック更新。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 09:44:16 +09:00
nrslib
52c5e29000
docs: require takt review before submitting PRs
...
Rewrite CONTRIBUTING.md to require contributors to run
takt -t "#<PR>" -w review and post the review summary as a
PR comment. Add Japanese version at docs/CONTRIBUTING.ja.md.
2026-02-28 09:39:59 +09:00
nrs
b6cd71e79d
Merge pull request #419 from nrslib/release/v0.27.0
...
Release v0.27.0
2026-02-28 08:52:14 +09:00