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 |
|
Junichi Kato
|
204843f498
|
Merge pull request #403 from j5ik2o/feature/cursor-agent-cli-provider-spec
feat: cursor-agent対応
|
2026-02-27 01:12:17 +09:00 |
|
nrslib
|
644c318295
|
fix: unify agent provider/model resolution and remove custom agent overrides
|
2026-02-27 00:27:52 +09:00 |
|
nrslib
|
f6d8c353d3
|
refactor: provider のデフォルト値 'claude' を廃止し明示設定を必須化
暗黙の claude フォールバックを削除し、未設定時は明確なエラーを返すように変更。
permission は未設定時 readonly にフォールバック。テスト・E2E を新挙動に適合。
|
2026-02-26 02:11:49 +09:00 |
|
nrslib
|
f2ca01ffe0
|
refactor: provider/model resolution precedenceを一元化
|
2026-02-23 15:28:38 +09:00 |
|
nrslib
|
69f13283a2
|
fix: movement provider override precedence in AgentRunner
|
2026-02-23 15:18:32 +09:00 |
|
nrslib
|
cbde7ac654
|
refactor: 設定参照をresolveConfigValueへ統一
|
2026-02-19 10:55:03 +09:00 |
|
nrslib
|
5dc79946f2
|
refactor: 設定解決をloadConfigへ統一し不要設定を削除
|
2026-02-19 10:32:59 +09:00 |
|
nrs
|
e52e1da6bf
|
takt-list (#271)
* refactor: provider/modelの解決ロジックをAgentRunnerに集約
OptionsBuilderでCLIレベルとstepレベルを事前マージしていたのをやめ、
stepProvider/stepModelとして分離して渡す形に変更。
AgentRunnerが全レイヤーの優先度を一括で解決する。
* takt: takt-list
|
2026-02-14 11:44:01 +09:00 |
|
nrslib
|
54e9f80a57
|
opencodeがパラレル実行時にセッションIDを引き継げないことがある
|
2026-02-13 23:11:32 +09:00 |
|
nrslib
|
c85f23cb6e
|
claude code がsandboxで実行されるため、テストが実行できない問題を対処できるオプションを追加
|
2026-02-13 21:46:11 +09:00 |
|
nrslib
|
479ee7ec25
|
providerごとに通信を許可する
|
2026-02-13 16:37:07 +09:00 |
|
nrslib
|
7d20c016c7
|
無用なexportを排除
|
2026-02-12 17:33:39 +09:00 |
|
nrslib
|
bf4196d3b3
|
takt: github-issue-257
|
2026-02-12 13:32:28 +09:00 |
|
nrs
|
b80f6d0aa0
|
takt: opencode (#222)
|
2026-02-11 06:35:50 +09:00 |
|
nrslib
|
9546806649
|
暴走抑止
|
2026-02-10 21:26:38 +09:00 |
|
nrslib
|
b25e9a78ab
|
fix: callAiJudgeをプロバイダーシステム経由に変更(Codex対応)
callAiJudgeがinfra/claude/にハードコードされており、Codexプロバイダー使用時に
judge評価が動作しなかった。agents/ai-judge.tsに移動し、runAgent経由で
プロバイダーを正しく解決するように修正。
|
2026-02-10 19:32:42 +09:00 |
|
nrslib
|
55559cc41c
|
Codex プロセスのハングによる worker pool スロット占有を防止
Codex CLI プロセスが API 応答待ちで無応答になった場合、for await ループが
永久にブロックし worker pool のスロットを占有し続ける問題に対処。
AbortSignal の伝播経路を整備し、2層のタイムアウトを導入した。
- Codex ストリームのアイドルタイムアウト(10分無応答で中断)
- タスクレベルのタイムアウト(並列実行時、1時間で中断)
- AbortSignal を worker pool → PieceEngine → AgentRunner → Codex SDK まで伝播
|
2026-02-09 10:00:05 +09:00 |
|
nrs
|
ffc151cd8d
|
takt: github-issue-125-claude-agent (#133)
|
2026-02-08 08:11:05 +09:00 |
|
nrslib
|
e23cfa9a3b
|
agent 周りの抽象化
|
2026-02-07 10:15:41 +09:00 |
|
nrslib
|
6f94681359
|
change agent to persona
|
2026-02-07 08:52:37 +09:00 |
|
nrslib
|
792f61df55
|
TAKTのメタ情報をエージェントに引き渡す。またTAKTの前回セッションの情報をscoreフェーズに追加 resolved #89
|
2026-02-05 09:20:18 +09:00 |
|
nrslib
|
38d43f2168
|
pieceに完全移行
|
2026-02-04 11:07:41 +09:00 |
|
nrslib
|
887365c4eb
|
無用な後方互換削除
|
2026-02-04 04:04:56 +09:00 |
|
nrslib
|
6378ee6174
|
プロンプトを見通しやすく変更
|
2026-02-04 03:33:48 +09:00 |
|
nrslib
|
7377c5f9d9
|
feat: プロバイダー非依存の permission_mode 値を導入し sandboxMode を設定可能にする (#87)
- permission_mode を readonly/edit/full に統一(プロバイダー非依存)
- Claude SDK: readonly→default, edit→acceptEdits, full→bypassPermissions とマッピング
- Codex SDK: readonly→read-only, edit→workspace-write, full→danger-full-access とマッピング
- Legacy値(default/acceptEdits/bypassPermissions)のサポートを削除
- 全ビルトインワークフローを新しい permission_mode 値に更新
- AgentRunner の ProviderCallOptions 生成ロジックをリファクタリング(DRY化)
|
2026-02-03 00:59:16 +09:00 |
|
nrslib
|
18894e2587
|
feat: workflowにてagent未指定でも起動可能にする (#71)
- agent フィールドを optional に変更
- agent未指定時は instruction_template のみで実行(システムプロンプトなし)
- agentSpec文字列をインラインシステムプロンプトとして扱う機能を追加
- セッションキーを agent ?? step.name に変更してagent未指定に対応
- README/README.ja.mdにエージェントレスステップの説明を追加
|
2026-02-03 00:21:17 +09:00 |
|
nrslib
|
b944349d8f
|
refacotr
|
2026-02-02 21:52:40 +09:00 |
|
nrslib
|
7d8ba10abb
|
refactor
|
2026-02-02 17:11:42 +09:00 |
|
nrslib
|
710d108f53
|
structuring
|
2026-02-02 10:14:12 +09:00 |
|
nrslib
|
9c597a9b0d
|
レポート出力をフェーズ2に分離し、本体実行からWriteを除外
ステップ実行を2フェーズに分離:
- フェーズ1(本体): allowed_toolsからWriteを除外、レポート情報を注入しない
- フェーズ2(レポート出力): 同一セッションresume、Writeのみ付与、ステータス検出なし
buildInstruction()からレポート関連コードを削除し、
buildReportInstruction()を新設してレポート出力の責務を完全分離。
|
2026-01-30 15:26:56 +09:00 |
|
nrslib
|
6fe6491948
|
report 系のformatを利用するように変更、gitdiff廃止
|
2026-01-30 09:13:32 +09:00 |
|
nrslib
|
e67d2648d8
|
rule機能追加
|
2026-01-30 00:05:11 +09:00 |
|
nrslib
|
d900ee8bc4
|
feat: answer status, autoCommit, permission_mode, verbose logging
- answer: planner が質問と判断したら COMPLETE で終了する仕組み
- autoCommit: worktree タスク完了時に自動 git commit
- permission_mode: workflow YAML でステップごとの権限指定
- verbose: verbose 時のファイル+stderr 二重出力修正
|
2026-01-28 10:02:04 +09:00 |
|
nrslib
|
ccc19e83ff
|
mock実行をできるように修正
|
2026-01-27 11:50:07 +09:00 |
|
nrslib
|
7beb604f1e
|
遷移用プロンプトをすべてworkflowに
|
2026-01-27 00:26:43 +09:00 |
|
nrslib
|
d8133bbc8c
|
プロンプトをピュアにする
|
2026-01-26 23:03:23 +09:00 |
|
nrslib
|
dad627ef03
|
モデルを選択可能に変更
|
2026-01-26 19:08:22 +09:00 |
|
nrslib
|
90cac7e25e
|
権限を設定できるように
|
2026-01-26 16:39:57 +09:00 |
|
nrslib
|
c1fccaaf37
|
support for codex
|
2026-01-26 16:24:50 +09:00 |
|
nrslib
|
e204c9b65e
|
ワークフローを変更
|
2026-01-26 09:10:43 +09:00 |
|
nrslib
|
334b9bb399
|
Remove interactive mode and simplify CLI
|
2026-01-25 21:58:56 +09:00 |
|
nrslib
|
ffe8776437
|
first commit:
|
2026-01-25 15:16:27 +09:00 |
|