Release v0.16.0
This commit is contained in:
parent
ef97834fc9
commit
def5f27309
16
CHANGELOG.md
16
CHANGELOG.md
@ -4,6 +4,22 @@ 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.16.0] - 2026-02-15
|
||||
|
||||
### Added
|
||||
|
||||
- **プロバイダー別パーミッションプロファイル(`provider_profiles`)**: グローバル設定(`~/.takt/config.yaml`)およびプロジェクト設定(`.takt/config.yaml`)でプロバイダーごとのデフォルトパーミッションモードとムーブメント単位のオーバーライドを定義可能に — 5段階の優先順位解決(project override → global override → project default → global default → `required_permission_mode` 下限補正)
|
||||
|
||||
### Changed
|
||||
|
||||
- **BREAKING: `permission_mode` → `required_permission_mode`**: ムーブメントの `permission_mode` フィールドを `required_permission_mode` にリネーム — 下限(フロア)として機能し、実際のパーミッションモードは `provider_profiles` で解決される設計に変更。旧 `permission_mode` は `z.never()` で拒否されるため後方互換性なし
|
||||
- ビルトイン `config.yaml` テンプレートを全面リライト: コメント整理、`provider_profiles` の説明と使用例を追加、OpenCode 関連設定の追加
|
||||
|
||||
### Internal
|
||||
|
||||
- プロバイダープロファイル関連のテスト追加(global-provider-profiles, project-provider-profiles, permission-profile-resolution, options-builder)
|
||||
- 並行実行テストに不足していた `loadProjectConfig` モックを追加
|
||||
|
||||
## [0.15.0] - 2026-02-15
|
||||
|
||||
### Added
|
||||
|
||||
@ -229,7 +229,7 @@ steps:
|
||||
provider: codex # claude|codex (optional)
|
||||
model: opus # Model name (optional)
|
||||
edit: true # Whether step can edit files
|
||||
permission_mode: acceptEdits # Tool permission mode (optional)
|
||||
required_permission_mode: edit # Required minimum permission mode (optional)
|
||||
instruction_template: |
|
||||
Custom instructions for this step.
|
||||
{task}, {previous_response} are auto-injected if not present as placeholders.
|
||||
@ -500,10 +500,9 @@ Debug logs are written to `.takt/logs/debug.log` (ndjson format). Log levels: `d
|
||||
- Claude supports aliases: `opus`, `sonnet`, `haiku`
|
||||
- Codex defaults to `codex` if model not specified
|
||||
|
||||
**Permission modes (v0.3.8+: provider-independent values):**
|
||||
**Permission modes (provider-independent values):**
|
||||
- `readonly`: Read-only access, no file modifications (Claude: `default`, Codex: `read-only`)
|
||||
- `edit`: Allow file edits with confirmation (Claude: `acceptEdits`, Codex: `workspace-write`)
|
||||
- `full`: Bypass all permission checks (Claude: `bypassPermissions`, Codex: `danger-full-access`)
|
||||
- Specified at step level (`permission_mode` field) or global config
|
||||
- **v0.3.8+:** Permission mode values are unified across providers; TAKT translates to provider-specific flags
|
||||
- Legacy values (`default`, `acceptEdits`, `bypassPermissions`) are **no longer supported**
|
||||
- Resolved via `provider_profiles` (global/project config) with `required_permission_mode` as minimum floor
|
||||
- Movement-level `required_permission_mode` sets the minimum; `provider_profiles` defaults/overrides can raise it
|
||||
|
||||
16
README.md
16
README.md
@ -366,7 +366,7 @@ movements:
|
||||
policy: coding
|
||||
knowledge: architecture
|
||||
edit: true
|
||||
permission_mode: edit
|
||||
required_permission_mode: edit
|
||||
rules:
|
||||
- condition: Implementation complete
|
||||
next: review
|
||||
@ -590,6 +590,16 @@ interactive_preview_movements: 3 # Movement previews in interactive mode (0-10,
|
||||
# coder: codex # Run coder on Codex
|
||||
# ai-antipattern-reviewer: claude # Keep reviewers on Claude
|
||||
|
||||
# Provider-specific permission profiles (optional)
|
||||
# Priority: project override → global override → project default → global default → required_permission_mode (floor)
|
||||
# provider_profiles:
|
||||
# codex:
|
||||
# default_permission_mode: full
|
||||
# movement_permission_overrides:
|
||||
# ai_review: readonly
|
||||
# claude:
|
||||
# default_permission_mode: edit
|
||||
|
||||
# API Key configuration (optional)
|
||||
# Can be overridden by environment variables TAKT_ANTHROPIC_API_KEY / TAKT_OPENAI_API_KEY / TAKT_OPENCODE_API_KEY
|
||||
anthropic_api_key: sk-ant-... # For Claude (Anthropic)
|
||||
@ -739,7 +749,7 @@ movements:
|
||||
- name: implement
|
||||
persona: coder
|
||||
edit: true
|
||||
permission_mode: edit
|
||||
required_permission_mode: edit
|
||||
pass_previous_response: true
|
||||
rules:
|
||||
- condition: Complete
|
||||
@ -808,7 +818,7 @@ Special `next` values: `COMPLETE` (success), `ABORT` (failure)
|
||||
| `allowed_tools` | - | List of tools agent can use (Read, Glob, Grep, Edit, Write, Bash, etc.) |
|
||||
| `provider` | - | Override provider for this movement (`claude`, `codex`, or `opencode`) |
|
||||
| `model` | - | Override model for this movement |
|
||||
| `permission_mode` | - | Permission mode: `readonly`, `edit`, `full` (provider-independent) |
|
||||
| `required_permission_mode` | - | Required minimum permission mode: `readonly`, `edit`, `full` (acts as floor; actual mode resolved via `provider_profiles`) |
|
||||
| `provider_options` | - | Provider-specific options (e.g. `codex.network_access`, `opencode.network_access`) |
|
||||
| `output_contracts` | - | Output contract definitions for report files |
|
||||
| `quality_gates` | - | AI directives for movement completion requirements |
|
||||
|
||||
@ -366,7 +366,7 @@ movements:
|
||||
policy: coding
|
||||
knowledge: architecture
|
||||
edit: true
|
||||
permission_mode: edit
|
||||
required_permission_mode: edit
|
||||
rules:
|
||||
- condition: 実装完了
|
||||
next: review
|
||||
@ -590,6 +590,16 @@ interactive_preview_movements: 3 # 対話モードでのムーブメントプ
|
||||
# coder: codex # coder を Codex で実行
|
||||
# ai-antipattern-reviewer: claude # レビュアーは Claude のまま
|
||||
|
||||
# プロバイダー別パーミッションプロファイル(オプション)
|
||||
# 優先順: project override → global override → project default → global default → required_permission_mode(下限)
|
||||
# provider_profiles:
|
||||
# codex:
|
||||
# default_permission_mode: full
|
||||
# movement_permission_overrides:
|
||||
# ai_review: readonly
|
||||
# claude:
|
||||
# default_permission_mode: edit
|
||||
|
||||
# API Key 設定(オプション)
|
||||
# 環境変数 TAKT_ANTHROPIC_API_KEY / TAKT_OPENAI_API_KEY / TAKT_OPENCODE_API_KEY で上書き可能
|
||||
anthropic_api_key: sk-ant-... # Claude (Anthropic) を使う場合
|
||||
@ -739,7 +749,7 @@ movements:
|
||||
- name: implement
|
||||
persona: coder
|
||||
edit: true
|
||||
permission_mode: edit
|
||||
required_permission_mode: edit
|
||||
pass_previous_response: true
|
||||
rules:
|
||||
- condition: 完了
|
||||
@ -808,7 +818,7 @@ rules:
|
||||
| `allowed_tools` | - | エージェントが使用できるツール一覧(Read, Glob, Grep, Edit, Write, Bash等) |
|
||||
| `provider` | - | このムーブメントのプロバイダーを上書き(`claude`、`codex`、または`opencode`) |
|
||||
| `model` | - | このムーブメントのモデルを上書き |
|
||||
| `permission_mode` | - | パーミッションモード: `readonly`、`edit`、`full`(プロバイダー非依存) |
|
||||
| `required_permission_mode` | - | 必要最小パーミッションモード: `readonly`、`edit`、`full`(下限として機能; 実際のモードは `provider_profiles` で解決) |
|
||||
| `provider_options` | - | プロバイダー固有オプション(例: `codex.network_access`、`opencode.network_access`) |
|
||||
| `output_contracts` | - | レポートファイルの出力契約定義 |
|
||||
| `quality_gates` | - | ムーブメント完了要件のAIディレクティブ |
|
||||
|
||||
@ -161,7 +161,7 @@ report:
|
||||
| `allowed_tools` | - | List of tools the agent can use (Read, Glob, Grep, Edit, Write, Bash, etc.) |
|
||||
| `provider` | - | Override provider for this step (`claude` or `codex`) |
|
||||
| `model` | - | Override model for this step |
|
||||
| `permission_mode` | `default` | Permission mode: `default`, `acceptEdits`, or `bypassPermissions` |
|
||||
| `required_permission_mode` | - | Required minimum permission mode: `readonly`, `edit`, or `full` (provider-independent) |
|
||||
| `report` | - | Report file configuration (name, format) for auto-generated reports |
|
||||
|
||||
## Examples
|
||||
@ -176,7 +176,7 @@ steps:
|
||||
- name: implement
|
||||
agent: ../agents/default/coder.md
|
||||
edit: true
|
||||
permission_mode: acceptEdits
|
||||
required_permission_mode: edit
|
||||
allowed_tools: [Read, Glob, Grep, Edit, Write, Bash, WebSearch, WebFetch]
|
||||
rules:
|
||||
- condition: Implementation complete
|
||||
@ -197,7 +197,7 @@ steps:
|
||||
- name: implement
|
||||
agent: ../agents/default/coder.md
|
||||
edit: true
|
||||
permission_mode: acceptEdits
|
||||
required_permission_mode: edit
|
||||
allowed_tools: [Read, Glob, Grep, Edit, Write, Bash, WebSearch, WebFetch]
|
||||
rules:
|
||||
- condition: Implementation complete
|
||||
@ -238,7 +238,7 @@ steps:
|
||||
agent: ../agents/default/coder.md
|
||||
edit: true
|
||||
pass_previous_response: true
|
||||
permission_mode: acceptEdits
|
||||
required_permission_mode: edit
|
||||
allowed_tools: [Read, Glob, Grep, Edit, Write, Bash, WebSearch, WebFetch]
|
||||
rules:
|
||||
- condition: Implementation complete
|
||||
|
||||
4
package-lock.json
generated
4
package-lock.json
generated
@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "takt",
|
||||
"version": "0.15.0",
|
||||
"version": "0.16.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "takt",
|
||||
"version": "0.15.0",
|
||||
"version": "0.16.0",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@anthropic-ai/claude-agent-sdk": "^0.2.37",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "takt",
|
||||
"version": "0.15.0",
|
||||
"version": "0.16.0",
|
||||
"description": "TAKT: TAKT Agent Koordination Topology - AI Agent Piece Orchestration",
|
||||
"main": "dist/index.js",
|
||||
"types": "dist/index.d.ts",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user