344 lines
12 KiB
Markdown
344 lines
12 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
|
|
## [0.4.1] - 2026-02-04
|
|
|
|
### Fixed
|
|
|
|
- Workflow execution bug where previous step's response was incorrectly bound to subsequent steps
|
|
- Fixed `MovementExecutor`, `ParallelRunner`, and `state-manager` to properly isolate step responses
|
|
- Updated interactive summary prompts to prevent response leakage
|
|
|
|
## [0.4.0] - 2026-02-04
|
|
|
|
### Added
|
|
|
|
- Externalized prompt system: all internal prompts moved to versioned, translatable files (`src/shared/prompts/en/`, `src/shared/prompts/ja/`)
|
|
- i18n label system: UI labels extracted to separate YAML files (`labels_en.yaml`, `labels_ja.yaml`) with `src/shared/i18n/` module
|
|
- Prompt preview functionality (`src/features/prompt/preview.ts`)
|
|
- Phase system injection into agents for improved workflow phase awareness
|
|
- Enhanced debug capabilities with new debug log viewer (`tools/debug-log-viewer.html`)
|
|
- Comprehensive test coverage:
|
|
- i18n system tests (`i18n.test.ts`)
|
|
- Prompt system tests (`prompts.test.ts`)
|
|
- Session management tests (`session.test.ts`)
|
|
- Worktree integration tests (`it-worktree-delete.test.ts`, `it-worktree-sessions.test.ts`)
|
|
|
|
### Changed
|
|
|
|
- **BREAKING:** Internal terminology renamed: `WorkflowStep` → `WorkflowMovement`, `StepExecutor` → `MovementExecutor`, `ParallelSubStepRawSchema` → `ParallelSubMovementRawSchema`, `WorkflowStepRawSchema` → `WorkflowMovementRawSchema`
|
|
- **BREAKING:** Removed unnecessary backward compatibility code
|
|
- **BREAKING:** Disabled interactive prompt override feature
|
|
- Workflow resource directory renamed: `resources/global/*/workflows/` → `resources/global/*/pieces/`
|
|
- Prompts restructured for better readability and maintainability
|
|
- Removed unnecessary task requirement summarization from conversation flow
|
|
- Suppressed unnecessary report output during workflow execution
|
|
|
|
### Fixed
|
|
|
|
- `takt worktree` bug fix for worktree operations
|
|
|
|
### Internal
|
|
|
|
- Extracted prompt management into `src/shared/prompts/index.ts` with language-aware file loading
|
|
- Created `src/shared/i18n/index.ts` for centralized label management
|
|
- Enhanced `tools/jsonl-viewer.html` with additional features
|
|
- Major refactoring across 162 files (~5,800 insertions, ~2,900 deletions)
|
|
|
|
## [0.3.9] - 2026-02-03
|
|
|
|
### Added
|
|
|
|
- Workflow categorization support (#85)
|
|
- Default category configuration in `resources/global/{lang}/default-categories.yaml`
|
|
- User-defined categories via `workflow_categories` in `~/.takt/config.yaml`
|
|
- Nested category support with unlimited depth
|
|
- Category-based workflow filtering in workflow selection UI
|
|
- `show_others_category` and `others_category_name` configuration options
|
|
- Builtin workflow filtering via `builtin_workflows_enabled` and `disabled_builtins`
|
|
- Agent-less step execution: `agent` field is now optional (#71)
|
|
- Steps can execute with `instruction_template` only (no system prompt)
|
|
- Inline system prompts supported (agent string used as prompt if file doesn't exist)
|
|
- `takt add #N` automatically reflects issue number in branch name (#78)
|
|
- Issue number embedded in branch name (e.g., `takt/issue-28-...`)
|
|
|
|
### Changed
|
|
|
|
- **BREAKING:** Permission mode values unified to provider-independent format (#87)
|
|
- New values: `readonly`, `edit`, `full` (replaces `default`, `acceptEdits`, `bypassPermissions`)
|
|
- TAKT translates to provider-specific flags (Claude: default/acceptEdits/bypassPermissions, Codex: read-only/workspace-write/danger-full-access)
|
|
- All builtin workflows updated to use new values
|
|
- Workflow naming changes:
|
|
- `simple` workflow replaced with `minimal` and `review-fix-minimal`
|
|
- Added `review-only` workflow for read-only code review
|
|
- Agent prompts updated with legacy対応禁止ルール (no backward compatibility hacks)
|
|
- Documentation updates:
|
|
- README.md and docs/README.ja.md updated with v0.3.8+ features
|
|
- CLAUDE.md significantly expanded with architectural details and implementation notes
|
|
|
|
### Internal
|
|
|
|
- Created `src/infra/config/loaders/workflowCategories.ts` for category management
|
|
- Created `src/features/workflowSelection/index.ts` for workflow selection UI
|
|
- Enhanced `src/shared/prompt/select.ts` with category display support
|
|
- Added comprehensive tests for workflow categories (`workflow-categories.test.ts`, `workflow-category-config.test.ts`)
|
|
|
|
## [0.3.8] - 2026-02-02
|
|
|
|
### Added
|
|
|
|
- CLI option to specify workflow/config file paths: `--workflow <path>` and `--config <path>` (#81)
|
|
- CI-friendly quiet mode for minimal log output (#70)
|
|
- Mock scenario support for testing workflow execution
|
|
- Comprehensive integration tests (7 test files, ~3000 lines of test coverage)
|
|
|
|
### Changed
|
|
|
|
- Rule evaluation improved: `detectRuleIndex` now uses last match instead of first match (#25)
|
|
- `ai_fix` step significantly improved:
|
|
- Added `{step_iteration}` counter to show retry attempt number
|
|
- Explicit fix procedure defined (Read → Grep → Edit → Test → Report)
|
|
- Coder agent now prioritizes reviewer feedback over assumptions
|
|
- README and docs updated with clearer CLI usage and CI/CD examples
|
|
|
|
### Fixed
|
|
|
|
- Workflow loading priority corrected (user workflows now take precedence over builtins)
|
|
- Test stability improvements (flaky tests skipped, ai_fix test updated)
|
|
- Slack notification configuration fixed
|
|
|
|
### Internal
|
|
|
|
- Refactored instruction builder: extracted context assembly and status rules logic (#44)
|
|
- Introduced `src/infra/task/git.ts` for DRY git commit operations
|
|
- Unified error handling with `getErrorMessage()`
|
|
- Made `projectCwd` required throughout codebase
|
|
- Removed deprecated `sacrificeMode`
|
|
- 35 files updated for consistency (`console.log` → `blankLine()`, etc.)
|
|
|
|
## [0.3.7] - 2026-02-01
|
|
|
|
### Added
|
|
|
|
- `--pipeline` flag for explicit pipeline/non-interactive mode execution (#28)
|
|
- Pipeline mode can be used with both `--task` and `--issue` options
|
|
|
|
### Changed
|
|
|
|
- Log file naming changed from base36 to human-readable `YYYYMMDD-HHmmss-random` format (#28)
|
|
- `--task` option description updated to clarify it's an alternative to GitHub issue
|
|
|
|
## [0.3.6] - 2026-01-31
|
|
|
|
### Fixed
|
|
|
|
- `ai_review` workflow step now correctly includes `pass_previous_request` setting
|
|
|
|
## [0.3.5] - 2026-01-31
|
|
|
|
### Added
|
|
|
|
- `--create-worktree <yes|no>` option to skip worktree confirmation prompt
|
|
|
|
### Fixed
|
|
|
|
- Various CI/CD improvements and fixes (#66, #67, #68, #69)
|
|
|
|
## [0.3.4] - 2026-01-31
|
|
|
|
### Added
|
|
|
|
- Review-only workflow for code review without modifications (#60)
|
|
- Various bug fixes and improvements (#14, #23, #35, #38, #45, #50, #51, #52, #59)
|
|
|
|
## [0.3.3] - 2026-01-31
|
|
|
|
### Fixed
|
|
|
|
- `takt add #N` がIssue内容をAI要約に通してしまい、タスク内容が壊れる問題を修正 (#46)
|
|
- Issue参照時は `resolveIssueTask` の結果をそのままタスクとして使用するように変更
|
|
|
|
## [0.3.1] - 2026-01-31
|
|
|
|
### Added
|
|
|
|
- Interactive task planning mode: `takt` (no args) starts AI conversation to refine task requirements before execution (#47, #5)
|
|
- Session persistence across takt restarts
|
|
- Read-only tools (Read, Glob, Grep, Bash, WebSearch, WebFetch) for codebase investigation
|
|
- Planning-only system prompt prevents code changes during conversation
|
|
- `/go` to confirm and execute, `/cancel` to exit
|
|
- Boy Scout Rule enforcement in reviewer/supervisor agent templates
|
|
|
|
### Changed
|
|
|
|
- CLI migrated from slash commands (`takt /run-tasks`) to subcommands (`takt run`) (#47)
|
|
- `/help` and `/refresh-builtin` commands removed; `eject` simplified
|
|
- SDK options builder only includes defined values to prevent hangs
|
|
|
|
### Fixed
|
|
|
|
- Claude Agent SDK hanging when `model: undefined` or other undefined options were passed as keys
|
|
|
|
## [0.3.0] - 2026-01-30
|
|
|
|
### Added
|
|
|
|
- Rule-based workflow transitions with 5-stage fallback evaluation (#30)
|
|
- Tag-based conditions: agent outputs `[STEP:N]` tags matched by index
|
|
- `ai()` conditions: AI evaluates free-text conditions against agent output (#9)
|
|
- `all()`/`any()` aggregate conditions for parallel step results (#20)
|
|
- 5-stage evaluation order: aggregate → Phase 3 tag → Phase 1 tag → AI judge → AI fallback
|
|
- 3-phase step execution model (#33)
|
|
- Phase 1: Main work (coding, review, etc.)
|
|
- Phase 2: Report output (when `step.report` defined)
|
|
- Phase 3: Status judgment (when tag-based rules exist)
|
|
- Session resumed across phases for context continuity
|
|
- Parallel step execution with concurrent sub-steps via `Promise.all()` (#20)
|
|
- GitHub Issue integration: execute/add tasks by issue number, e.g. `takt #6` (#10, #34)
|
|
- NDJSON session logging with real-time streaming writes (#27, #36)
|
|
- Builtin resources embedded in npm package with `/eject` command for customization (#4, #40)
|
|
- `edit` property for per-step file edit control
|
|
- Rule match method visualization and logging
|
|
- Report output auto-generation from YAML `report.format`
|
|
- Parallel review support in builtin workflows with spec compliance checking (#31)
|
|
- WorkflowEngine mock integration tests (#17, #41)
|
|
|
|
### Changed
|
|
|
|
- Report format unified to auto-generation; manual `order`/`instruction_template` for reports removed
|
|
- `gitdiff` report type removed in favor of format-based reports
|
|
|
|
### Fixed
|
|
|
|
- Report directory correctly includes `.takt/reports/` prefix (#37, #42)
|
|
- Unused import in eject.ts (#43)
|
|
|
|
## [0.2.3] - 2026-01-29
|
|
|
|
### Added
|
|
|
|
- `/list-tasks` command for branch management (try merge, merge & cleanup, delete)
|
|
|
|
### Changed
|
|
|
|
- Isolated execution migrated from `git worktree` to `git clone --shared` to prevent Claude Code SDK from traversing back to main repository
|
|
- Clone lifecycle: auto-deletion after task completion removed; use `/list-tasks` for cleanup
|
|
- `worktree.ts` split into `clone.ts` + `branchReview.ts`
|
|
- Origin remote removed from clones to block SDK traversal
|
|
- All workflow report steps granted Write permission
|
|
- `git clone --shared` changed to `--reference --dissociate`
|
|
|
|
### Fixed
|
|
|
|
- Version read from `package.json` instead of hardcoded `0.1.0` (#3)
|
|
|
|
## [0.2.2] - 2026-01-29
|
|
|
|
### Added
|
|
|
|
- `/review` instruct action for executing instructions on task branches
|
|
- AI-powered task name summarization to English slugs for branch names
|
|
- Worktree session inheritance
|
|
- Execution Rules metadata (git commit prohibition, cd prohibition)
|
|
|
|
### Changed
|
|
|
|
- Status output rule headers auto-generated
|
|
- Instructions auto-include worktree change context
|
|
- Try Merge changed to squash merge
|
|
- `expert-review` renamed to `expert-cqrs`; common reviewers consolidated under `expert/`
|
|
|
|
### Fixed
|
|
|
|
- Tasks incorrectly progressing to `completed` on abnormal termination
|
|
|
|
## [0.2.1] - 2026-01-28
|
|
|
|
### Added
|
|
|
|
- Language setting (`ja`/`en`)
|
|
- Multiline input support for `/add-task`
|
|
- `/review-tasks` command
|
|
- Cursor-based (arrow key) menu selection replacing numeric input
|
|
- `answer` status, `autoCommit`, `permission_mode`, verbose logging options
|
|
|
|
### Fixed
|
|
|
|
- Multiple worktree-related bugs (directory resolution, session handling, creation flow)
|
|
- ESC key cancels workflow/task selection
|
|
|
|
## [0.2.0] - 2026-01-27
|
|
|
|
### Added
|
|
|
|
- `/watch` command for file system polling and auto-executing tasks from `.takt/tasks/`
|
|
- `/refresh-builtin` command for updating builtin resources
|
|
- `/add-task` command for interactive task creation
|
|
- Enhanced default workflows
|
|
|
|
## [0.1.7] - 2026-01-27
|
|
|
|
### Added
|
|
|
|
- Schema permission support for workflow validation
|
|
|
|
## [0.1.6] - 2026-01-27
|
|
|
|
### Added
|
|
|
|
- Mock execution mode for testing
|
|
|
|
### Changed
|
|
|
|
- `-r` option omitted; default changed to conversation continuation mode
|
|
|
|
## [0.1.5] - 2026-01-27
|
|
|
|
### Added
|
|
|
|
- Total execution time output
|
|
|
|
### Fixed
|
|
|
|
- Workflow unintentionally stopping during execution
|
|
|
|
## [0.1.4] - 2026-01-27
|
|
|
|
### Changed
|
|
|
|
- Workflow prompts strengthened
|
|
- Transition prompts consolidated into workflow definitions
|
|
|
|
## [0.1.3] - 2026-01-26
|
|
|
|
### Fixed
|
|
|
|
- Iteration stalling issue
|
|
|
|
## [0.1.2] - 2026-01-26
|
|
|
|
### Added
|
|
|
|
- Codex provider support
|
|
- Model selection per step/agent
|
|
- Permission mode configuration
|
|
- Worktree support for isolated task execution
|
|
- Project `.gitignore` initialization
|
|
|
|
### Changed
|
|
|
|
- Agent prompts refined
|
|
|
|
## [0.1.1] - 2026-01-25
|
|
|
|
### Added
|
|
|
|
- GitHub Actions workflow for npm publish
|
|
|
|
### Changed
|
|
|
|
- Interactive mode removed; CLI simplified
|