-
Notifications
You must be signed in to change notification settings - Fork 254
Releases: GreenSheep01201/claw-empire
Releases · GreenSheep01201/claw-empire
Claw-Empire v2.0.4
Claw-Empire v2.0.4 Release Notes
- Release date: 2026年03月12日
- Scope: first-class Docker deployment support, stale working-agent recovery, official direct-API preset onboarding, Kimi Code provider support, and development-default API assignment across hydrated office packs.
Highlights
1. Docker Deployment Is Now a First-Class Path
- Added a production-oriented
Dockerfile,.dockerignore, anddocker-compose.yml. - Container runtime now uses a non-root user and standardized writable data locations.
- Runtime path resolution was updated so database/log paths behave correctly inside Docker deployments.
- README deployment guidance was added across English, Korean, Japanese, and Chinese.
2. Stale working Agents Now Recover Automatically
- Startup and lifecycle sweeps now detect agents that are still marked
workingeven though their current task is missing or no longerin_progress. - Those agents are reset back to
idlewithcurrent_task_id = NULL. - Result: server restarts and interrupted runs no longer leave misleading "still working" agents behind in the UI.
3. Official Direct-API Presets Reduce Manual Setup Friction
- Settings > API now includes official presets for:
OpenCode Go (OpenAI)OpenCode Go (Anthropic)Bailian Coding Plan (OpenAI)Bailian Coding Plan (Anthropic)
- Presets now:
- lock and manage the expected Base URL
- seed fallback model lists immediately
- keep refresh/retry explicit instead of silently retry-looping after failures
- show preset identity directly on provider cards
- Existing provider-card model search remains available, so large cached model lists are still easy to filter before assignment.
4. Kimi Code Is Now Treated as a First-Class Provider
- Kimi Code is now supported through the CLI execution path alongside the existing local coding providers.
- The integration was completed across:
- provider selection and display labels
- task execution/provider validation
- prompt-skill rendering
- skill learn/unlearn provider routing
- video-preprod remotion bootstrap
- provider checks in existing database schema/runtime migration paths
- Result: Kimi is no longer just a partial label-level addition; it is wired through the execution and skills flow end to end.
5. API Model Assignment Now Starts With Development and Includes Initialized Packs
- The assign flow now always loads the
developmentoffice as the default baseline. - If a user has already completed initial setup for other office packs and those packs have been hydrated into runtime state, their agents and departments also appear in the assignment modal.
- Pack sections are now grouped safely, so packs that reuse the same department IDs no longer collapse into each other inside the modal.
- Result: default development assignment remains predictable, while already-initialized office packs can also receive direct API model mappings from the same settings flow.
6. Local E2E Validation Is Safer and Leaves Less Residue
pnpm run test:e2enow resets the isolated.tmp/e2e-runtimedatabase both before and after the Playwright run.- Playwright no longer reuses an already-running local
8810server by default. Reuse is now opt-in viaPW_REUSE_EXISTING_SERVER=1. - CRUD-heavy E2E scenarios were hardened so local validation does not keep leaving stale departments, agents, and similar CI residue behind during normal development verification.
- Result: local E2E runs are more predictable, are less likely to touch the wrong runtime, and clean up their temporary state more aggressively.
PR Attribution
- Includes
PR #56: Docker deployment support (Dockerfile, compose, runtime path handling, multilingual docs) - Includes
PR #60: stale/orphan working-agent recovery during lifecycle startup and interval sweeps - Includes intent-preserving integration of current open PR work:
PR #62: development-pack-scoped API assignment departmentsPR #63: Kimi Code provider support and migration/runtime completionPR #64: official API presets, preset refresh hardening, and provider-card UX updates- post-integration follow-up: API assign modal now includes hydrated office packs while keeping
developmentas the default baseline
Files Updated in This Release
.dockerignoreDockerfiledocker-compose.ymlREADME.mdREADME_ko.mdREADME_jp.mdREADME_zh.mddocs/releases/README.mddocs/releases/v2.0.4.mdserver/config/runtime.tsserver/db/runtime.tsserver/modules/bootstrap/schema/api-providers-schema.test.tsserver/modules/bootstrap/schema/base-schema.tsserver/modules/bootstrap/schema/oauth-runtime.test.tsserver/modules/bootstrap/schema/oauth-runtime.tsserver/modules/bootstrap/schema/task-schema-migrations.tsserver/modules/lifecycle.tsserver/modules/routes/ops/api-providers.test.tsserver/modules/routes/ops/api-providers.tsserver/modules/routes/ops/skills/learn-constants.tsserver/modules/routes/ops/skills/learn-core.tsserver/modules/routes/ops/skills/types.tsserver/modules/workflow/agents/providers/usage-cli-tools.tsserver/modules/workflow/core/cli-tools.tsserver/modules/workflow/core/prompt-skills.test.tsserver/modules/workflow/core/prompt-skills.tsserver/modules/workflow/core/video-skill-bootstrap.test.tsserver/modules/workflow/core/video-skill-bootstrap.tsserver/modules/workflow/packs/video-artifact.tssrc/api-provider-presets.test.tssrc/api/providers-reports-github.tssrc/api/workflow-skills-subtasks.tssrc/components/AgentDetail.tsxsrc/components/AgentStatusPanel.tsxsrc/components/agent-detail/constants.tssrc/components/agent-manager/constants.tssrc/components/settings/ApiSettingsTab.test.tsxsrc/components/settings/ApiSettingsTab.tsxsrc/components/settings/Logos.tsxsrc/components/settings/constants.tsxsrc/components/settings/types.tssrc/components/settings/useApiProvidersState.test.tsxsrc/components/settings/useApiProvidersState.tssrc/components/skill-history/utils.tssrc/components/skills-library/model.tsxsrc/types/index.ts
Verification
pnpm run test:cipnpm run buildpnpm run test:e2e
Compatibility Notes
- A schema/runtime migration is included for existing provider checks so legacy databases can accept
kimiin the relevant provider columns. - Docker deployment is additive and optional; existing local non-Docker workflows remain supported.
- Official API presets are backward compatible with manual API provider configuration.
Assets 2
Claw-Empire v2.0.3
Claw-Empire v2.0.3 Release Notes
- Release date: 2026年03月08日
- Scope: selective PR #54 salvage, task worktree verification visibility, report reliability fixes, and optional self-host operations references.
Highlights
1. Final Branch Verification Is Now Visible Before Merge
- Added
GET /api/tasks/:id/verify-commitso the app can inspect a task worktree before merge. - The endpoint evaluates commit count, changed files, and uncommitted files, then returns a verdict such as:
okno_worktreeno_commitdirty_without_commitcommit_but_no_code
- Internal helper artifacts such as
.claude/skillsare excluded from the code-change verdict so non-code support files do not create false positives.
2. Diff Modal Now Shows Final Branch Verification
- The task diff modal now loads worktree verification alongside the git diff.
- You can see:
- final verification verdict
- compare/base ref
- commit count
- changed files
- uncommitted file count
- Result: merge and discard decisions are now made with explicit worktree evidence instead of raw diff text alone.
3. Completion Reports Now Preserve Final Verification Evidence
- Manual merge flow now appends a system log entry such as
Final branch verification: passed (...)before merge. - The completion report popup surfaces those verification logs in the planning summary view.
- Result: completed task reports now retain proof that the final branch was checked before merge.
4. Report Avatars No Longer Fall Back to Emoji for Missing Active Agents
- Report history and task-completion popup avatars no longer depend only on the currently active office-pack agent list.
- When a report references an assignee who is not present in the current
agentsarray, the UI now builds a report-scoped fallback agent from the report payload and still renders a sprite avatar. - Result: completed report rows and popups continue to show the agent face instead of degrading to emoji when the active agent roster has changed.
5. Cleanup Utility for Staff State Auditing
- Added
scripts/cleanup-staff.mjs. - The utility can:
- reset
breakstaff back toidle - report role distribution
- detect duplicate names
- reset
- It prefers
DB_PATHwhen provided, making it usable across different local environments.
6. Optional Self-Host Deployment References
- Added optional deployment reference files under
deploy/:deploy/README.mddeploy/.env.production.templatedeploy/claw-empire@.servicedeploy/nginx/claw-empire.conf
- These are reference templates for self-hosted setups, not a required runtime migration.
PR Attribution
- This release includes selected salvage from
PR #54, limited to independent operational/documentation ideas that fit the current product structure. - It does not include the broader PR #54 task model, admin console, local-server, or work-phase proposals.
Files Updated in This Release
deploy/.env.production.templatedeploy/README.mddeploy/claw-empire@.servicedeploy/nginx/claw-empire.confdocs/releases/README.mddocs/releases/v2.0.3.mdREADME.mdREADME_ko.mdREADME_jp.mdREADME_zh.mdscripts/cleanup-staff.mjsserver/modules/routes/ops/worktrees-and-usage.test.tsserver/modules/routes/ops/worktrees-and-usage.tsserver/scripts/cleanup-staff.test.tssrc/api.test.tssrc/api/workflow-skills-subtasks.tssrc/components/ReportHistory.test.tsxsrc/components/ReportHistory.tsxsrc/components/TaskReportPopup.test.tsxsrc/components/TaskReportPopup.tsxsrc/components/task-report-agent.tssrc/components/taskboard/DiffModal.test.tsxsrc/components/taskboard/DiffModal.tsx
Compatibility Notes
- No schema migration is required for v2.0.3.
- Deployment templates under
deploy/are optional references only. - The release is focused on safer merge visibility, more trustworthy completion reports, and small operational salvage from
PR #54.
Assets 2
Claw-Empire v2.0.2
Claw-Empire v2.0.2 Release Notes
- Release date: 2026年03月07日
- Scope: CI/E2E coverage expansion, contributor-facing API documentation parity refresh, and reproducible OpenAPI validation for the main branch.
Highlights
1. CI Now Blocks OpenAPI Contract Drift
test:cinow runsopenapi:checkbefore E2E execution.- This makes undocumented or stale OpenAPI paths fail in CI instead of being discovered later in manual review.
- Result: API docs, generated OpenAPI, and shipped routes are now checked as one release gate.
2. New CI E2E Coverage for Operational API Paths
- Added CI-focused E2E coverage for execution-control and orchestration-critical paths:
POST /api/tasks/:id/runPOST /api/tasks/:id/stopPOST /api/tasks/:id/injectPOST /api/tasks/:id/resumeGET /api/tasks/:id/terminalGET /api/tasks/:id/meeting-minutes
- Added directive-webhook coverage for
POST /api/inboxso task-routing and announcement entry flow are exercised in CI. - Added project-path and diagnostics coverage for:
GET /api/projects/path-checkGET /api/projects/path-suggestionsGET /api/projects/path-browseGET /api/cli-statusGET /api/cli-usage- API provider preset/CRUD routes
3. Docs and Public API Surface Are Now Exercised in CI
- Added CI checks for live docs routes:
GET /api/docsGET /api/docs/swagger-bootstrap.jsGET /api/openapi.json
- Added public-surface verification for contributor-facing utility and ops routes so documentation drift is caught alongside route regressions.
- Coverage is now split across dedicated CI specs for:
- operational API flows
- docs and ops route availability
- public API surface expectations
4. API Documentation Was Brought Back to Route Parity
- Refreshed
docs/api.mdanddocs/openapi.jsonto cover contributor-facing routes that had fallen behind implementation. - Newly documented or clarified coverage includes categories such as:
- task reports and task execution control
- project detail/branch/path helper routes
- subtasks and agent spawn flows
- announcements and directives
- GitHub status/repo/clone helpers
- OAuth status/account lifecycle routes
- skills learn/history/custom routes
- sprite processing/registration
- auto-update status/apply/config routes
- Result: main-branch docs now describe the practical API surface used by contributors and CI.
5. E2E Inbox Verification No Longer Depends on Local Secrets
- CI inbox-webhook coverage now uses a dedicated E2E-only secret instead of any developer-local
.envsecret. - This keeps the test reproducible in CI and prevents accidental leakage of real local webhook secrets into tracked test fixtures.
Post-release Additions Still Included in v2.0.2
6. PR #49 Follow-up: Discord Channel Docs/Test Cleanup
- Removed the nonexistent
409response fromPOST /api/messenger/discord/channelsin generated OpenAPI output. - Added a
mockReset()guard for Discord channel listing tests so characterization coverage stays isolated across runs. - Result: the shipped API contract and the actual Discord channel route behavior now stay aligned in both docs and tests.
7. PR #55: API Provider Model Search
- The API provider settings panel now includes an inline model search field when a provider's cached model list is expanded.
- Filtering happens locally per provider, so large model lists can be narrowed without reloading or collapsing the provider card.
- Added a dedicated UI regression test to ensure the filtered model list only shows matches and keeps non-matching models hidden.
8. PR #52 (Selective): Windows Local Dev Launcher Scripts
- Added Windows helper scripts for local development startup:
scripts/run-claw-empire-dev-local.cmdscripts/kill-claw-empire-dev.ps1
- Adjusted the PowerShell cleanup logic so it matches processes by the current repository root instead of a hardcoded path.
- Result: Windows local launcher cleanup is portable across clones instead of only working for one machine-specific directory.
Files Updated in This Release
docs/api.mddocs/openapi.jsondocs/releases/v2.0.2.mdscripts/kill-claw-empire-dev.ps1scripts/openapi-contract.mjsscripts/run-claw-empire-dev-local.cmdsrc/components/settings/ApiSettingsTab.test.tsxsrc/components/settings/ApiSettingsTab.tsxsrc/components/settings/GatewaySettingsTab.characterization.test.tsxtests/e2e/ci-api-ops-and-docs.spec.tstests/e2e/ci-docs-and-ops.spec.tstests/e2e/ci-public-api-surface.spec.tspackage.json
Compatibility Notes
- No schema migration is required for v2.0.2.
- No user-facing workflow changes are required to adopt this release.
- This release is focused on release-gate accuracy, API discoverability, regression prevention on
main, and small post-release UX/runtime follow-ups from PRs#49,#52, and#55.
Assets 2
Claw-Empire v2.0.1
Claw-Empire v2.0.1 Release Notes
- Release date: 2026年03月03日
- Scope: Discord direct-messenger bidirectional reliability update plus office-pack hydration-aware department precedence and first-install bootstrap safety.
Additional Update (2026年03月03日)
0. Office Pack Department Precedence Is Now Hydration-Aware
- For non-development office packs, department merge precedence now depends on hydration state:
- pre-hydration: pack profile labels/icons are shown first
- post-hydration: DB metadata becomes source of truth
- This keeps first-install users from losing pack-profile defaults before DB hydration is ready.
0.1 UI Wiring Updated for Deterministic Behavior
AppMainLayoutnow computesisHydratedOfficePackbefore department display resolution.resolvePackDepartmentsForDisplayreceivespreferPackProfile: !isHydratedOfficePackto make the transition explicit and deterministic.
0.2 Regression Coverage Added for Merge Semantics
- Added test coverage for:
- pre-hydration pack-profile priority
- post-hydration DB priority
- foreign-pack seed-agent filtering in non-development packs
Highlights
1. Discord Channel Auto-Discovery by Token
- Added
POST /api/messenger/discord/channelsto resolve Discord channels directly from a Bot token. - Token normalization now accepts both raw token and
Bot <token>input formats. - Discovery flow reads:
/users/@me/guilds(guild list)/guilds/:id/channels(channel list per guild)
- Channel candidates are filtered to text-capable Discord types (
0,5,10,11,12), deduplicated, and sorted by guild/name for consistent UI rendering. - Error mapping is now explicit:
discord_token_required(400)discord_auth_failed(401/403)discord_rate_limited(429)discord_channel_lookup_failed(502)
2. Settings UX Upgrade for Discord Session Setup
- In Messenger Settings > Add/Edit Chat, Discord token input now auto-triggers channel lookup with debounce.
- Added auto-detected Discord channel selector:
- selectable option format:
Guild / #channel (channelId) - selected option auto-fills
targetIdand default display name when empty.
- selectable option format:
- Added multilingual guidance for lookup states (KO/EN/JA/ZH):
- loading indicator
- auto-loaded channel count
- no-discoverable-channel hint (permission/server membership guidance)
- detailed auth/rate-limit/failure error messages
3. Discord Receiver Added (Inbound -> Inbox Forward)
- Added Discord polling receiver runtime (
server/messenger/discord-receiver.ts) and wired it into lifecycle start/stop. - Receiver resolves enabled Discord session routes from settings and polls channel messages with per-route cursors.
- Human text messages are forwarded into
/api/inboxwith route context:source:discordor token-hinted source when multi-tokenchat:channel:<channelId>author: Discord display/user identity normalization
- Bot-authored and empty-content messages are skipped to avoid self-echo loops/noise.
- Cursor state persists under
discordReceiverCursor, preventing duplicate forwards across restarts.
4. Runtime Receiver Observability
- Added
GET /api/messenger/receiver/discordfor receiver health/status inspection. - Settings runtime panel now displays Discord receiver state alongside Telegram:
- active/inactive flag
- polled route count
- last error surface for fast diagnosis
- Result: one-way outbound test success can now be differentiated from inbound receive readiness directly in UI.
5. Multi-Token Routing Safety for Discord Inbound Flow
- Receiver route keys now combine token-hash key + channel ID (
<tokenKey>:<channelId>) for cursor isolation. - When multiple Discord tokens share the same target channel ID, inbound forwarding uses token-hinted
sourcevalues to preserve session ownership. - This mirrors existing messenger token-hint route disambiguation strategy and prevents cross-token mixing.
6. Test Coverage Expansion
- Added gateway tests for Discord channel lookup:
- successful guild/channel aggregation path
- auth failure behavior and error surfacing
- Added Discord receiver tests for:
- inbox forwarding + cursor persistence
- bot-message skip behavior
- multi-token token-hint source separation
- Added Settings characterization test:
- token input triggers Discord auto-discovery
- loaded channel options are rendered and selectable
API and Behavior Notes
- New API endpoints:
POST /api/messenger/discord/channelsGET /api/messenger/receiver/discord
- No schema migration is required for this release.
- Existing outbound messenger send flow remains compatible.
- If Discord token/session or
INBOX_WEBHOOK_SECRETis missing, receiver remains non-forwarding and exposes explicit status error text.
Compatibility Notes
- Backward compatible with existing
messengerChannelsstructure. - Existing Telegram receiver behavior is unchanged.
- Existing Discord outbound message sending continues to work; v2.0.1 adds inbound routing and setup ergonomics on top.
Assets 2
1 person reacted
Claw-Empire v2.0.0
Claw-Empire v2.0.0 Release Notes
- Release date: 2026年02月28日
- Scope: Workflow Pack / Office Pack operational rollout and direct messenger routing stability update, covering pack-based office profiles, agent/department sync, multi-token messenger isolation, and inbox/session handling hardening.
Highlights
1. Workflow Pack Platform Rollout
- Added first-class workflow pack definitions and runtime APIs for pack-aware orchestration.
- Built-in pack keys now include:
developmentreportweb_research_reportnovelvideo_preprodroleplay
- Added
/api/workflow-packsroute and schema/runtime support for pack metadata and enabled-state management. - Messenger session settings now support per-session
workflowPackKey, enabling channel-session based task style routing.
2. Office Pack UX and Real Data Isolation
- Moved Office Pack selector to the top header for faster context switching while keeping office canvas focus intact.
- Added pack-specific office presets (room themes, department naming, staff naming/persona seeds) with multilingual labels.
- Implemented pack profile isolation for non-development packs so each pack keeps independent agent/department datasets.
- Agent/Department management now applies CRUD/reorder changes against the selected pack profile in isolated packs, while development pack keeps existing DB-backed behavior.
- Fixed office avatar rendering consistency so non-development pack characters use proper sprite avatars instead of emoji fallbacks.
Office Pack Profiles Added in v2.0.0
development(DEV): default engineering baseline profile (backward-compatible DB behavior).report(RPT): structured report production profile with Editorial Planning, Research Engine, Doc Design, and Review Desk.web_research_report(WEB): evidence-first web investigation profile with Research Strategy, Crawler Team, and Fact Check workflow.novel(NOV): narrative production profile tuned for worldbuilding, character consistency, and tone QA.video_preprod(VID): video pre-production profile focused on concept/script/shot-list/editing-note handoff quality.roleplay(RPG): character roleplay profile optimized for in-character dialogue immersion and character QA/safety consistency.
3. Messenger Multi-Token Route Isolation
- Hardened route resolution for same-provider multi-session setups where
targetIdmay overlap across different bot tokens. - Added token-hint route keying (
<channel>#<tokenKey>) for internal source disambiguation without exposing raw tokens. - Session route matching now validates both
targetIdand token-key context when present. - Telegram receiver now supports per-token route processing and per-token offset persistence to avoid cross-token poll collisions.
- Result: when multiple Telegram bots point to the same chat/channel ID, replies are routed back to the correct originating bot/session.
4. Inbox Session Reset and Project Flow Reliability
- Added
/newmessenger command handling to reset direct-chat session binding state and start a fresh conversation thread. - Reset ACK messages are localized (KO/EN/JA/ZH) and delivered on the same route.
- Improved existing/new project guidance flow with stronger multilingual intent fallback and recent-project selection stability.
- Existing-project candidate output now supports concise numbered selection patterns with clearer latest-project emphasis.
5. Decision Notice Readability v2
- Decision request formatting was further compacted for messenger readability:
- short planning-lead summary block
- concise option previews
- clearer numeric single/multi-reply guidance
- Added recommendation extraction/output refinements so planning-lead recommendation is surfaced as a cleaner numeric suggestion line.
- Preserved multilingual parsing and numeric reply compatibility (
1,1,3,1 3) with route-aware ACK delivery.
6. Stability and Test Coverage Additions
- Added/expanded regression coverage for:
- messenger client session routing behavior
- messenger token-aware route resolution
- Telegram receiver multi-token handling
- office pack normalization and sync planning logic
- Runtime typing and route dependency wiring were tightened around collab/inbox/session handling paths.
7. New Menu Updates (Workflow/Office Pack)
video_preprodpack received production-level render orchestration updates:- Remotion-based real MP4 output guidance is now built into pack execution rules.
[VIDEO_FINAL_RENDER]subtask is seeded at planning stage and delegated only after non-render subtasks complete.- When review meeting routing is blocked, final render delegation is queued and resumed automatically.
- Review flow now prevents duplicate final-render subtask creation and reconciles stale delegated render links.
- Delegation runtime for pack flows was hardened:
- origin-team-first sequential delegation order is enforced.
- workflow-pack scope is preserved when creating delegated tasks.
- in-flight drain/re-entry race windows and render-delegation stale-state paths are guarded.
- Office Pack operational lifecycle was expanded for real usage:
- first-entry pack hydration bootstraps pack-specific department/agent seeds into DB.
- hydrated packs switch to DB-backed mode and skip re-hydration to preserve user customizations.
- provider edits from Office tab now persist correctly for hydrated pack agents.
- Settings UX update for new pack operations:
- toggle-based controls (auto-assign, YOLO mode, etc.) were reorganized for clearer two-column scanning.
- Report/PPT operation update inside pack-driven flow:
- report output policy now targets both HTML and PPTX artifacts together.
python-pptxfallback is constrained to PPT Team unavailable/hard-fail cases with explicit fallback logging.
- Prompting/context quality update for new workflow menu:
- video generation guidance was upgraded for higher output quality.
- auto-generated worktree
CLAUDE.mdcontext scaffolding was enriched.
8. Fixes on Existing Flows (Non-New-Menu)
- Worktree lifecycle now recovers from branch name collisions by choosing safe suffixed branch/worktree candidates.
- Claude CLI spawn path now preserves
--no-toolsargv token semantics across shell execution. - Decision YOLO/autopilot retry handling was hardened to avoid busy-loop style stalls on retryable failures.
- WebSocket unauthorized-close recovery was stabilized to reduce force-bootstrap retry loops.
- Messenger decision delivery/retry and progress-target inference paths were tightened for better continuity.
API and Behavior Notes
- New/expanded workflow-pack surface:
GET /api/workflow-packs
- Messenger session payloads include optional:
workflowPackKey- per-session
tokenoverride
- Internal source route may include token hint suffix:
<channel>#<tokenKey>(for route disambiguation only)
Compatibility Notes
- Existing
developmentoffice behavior remains backward compatible. - Non-development packs use isolated profile data by design and do not overwrite the development office baseline.
Assets 2
Claw-Empire v1.2.3
Claw-Empire v1.2.3 Release Notes
- Release date: 2026年02月27日
- Scope: Direct messenger integration and decision-routing stabilization update, covering multi-channel session UX, channel-isolated relay behavior, in-messenger decision replies, and project-binding safety hardening.
Highlights
1. Unified Built-in Messenger Channels
- Added a shared messenger channel catalog used across runtime, routing, gateway, and UI layers.
- Built-in channels are now normalized to:
telegramwhatsappdiscordgooglechatslacksignalimessage
- Runtime channel configuration is persisted in SQLite (
settings.messengerChannels) and consumed consistently by server gateway and UI.
2. Settings Tab UX Redesign (Chat Sessions)
- Replaced per-channel fragmented editing flow with a unified "Add Chat" / "Edit Chat" modal UX.
- Session create/edit/delete now supports channel, token, target, name, enabled flag, and mapped agent in one place.
- Confirm in modal immediately persists settings (no extra global save step for chat-session changes).
- Chat list now shows mapped agent avatar + name next to each session for faster operator context.
- Added explicit helper copy at the top of Channel Messaging tab to guide users on registering messenger/token/target ID/conversation agent.
3. Channel-Isolated Task Relay
- Task relay remains pinned to the origin route via
[messenger-route] <channel>:<target>. - Relay policy was expanded from completion-only reports to task broadcast messages:
reportchatstatus_update
- Result: meeting kickoff/progress/completion messages are delivered only to the originating channel route, preventing cross-channel spread.
- Added in-memory route cache guardrails (TTL + max size) for route lookup stability.
4. Decision Inbox Messenger Bridge
- Decision requests are now delivered to the same messenger route tied to task/project context.
- Added persistent dedupe reservation/sent markers to prevent duplicate decision notices across retries/restarts.
- Users can answer decisions directly in messenger with numeric replies:
- single:
1 - multi-pick (review round):
1,3or1 3
- single:
- Decision reply parsing is multilingual and route-aware, then applied via the existing decision handlers.
- Reply ACK/ERR is sent back to the same messenger channel/target.
- Numeric multi-choice parsing was hardened so plain replies like
1,2,3,4are treated as decision replies when a pending decision exists. - If no pending decision exists, plain numeric chat remains regular agent conversation flow (no forced decision interception).
5. Decision Message Readability Improvements
- Decision request messages were reformatted for messenger readability:
- compact summary text
- concise option previews
- plain numeric reply guidance
- Removed default heavy technical token noise (advanced token reply line) from normal operator view.
- Kept token-based explicit reply parsing supported internally for compatibility.
6. Direct Chat Workflow and Safety Hardening
- Direct-chat project flow enforces existing/new project selection before escalation.
- Improved multilingual intent/project-kind fallback to reduce looped prompts.
- New project path creation is restricted by allowed roots (
PROJECT_PATH_ALLOWED_ROOTS) to harden path traversal risk. - Added duplicate sentence normalization mitigation for cleaner outbound replies.
- Task-delegation/runtime typing tightened (
db: any-> strict runtime DB types in deps).
7. Messenger Completion Report Readability Patch
- Long completion reports (table-heavy/large payload) are now transformed into compact messenger summaries:
- title + top key results
- progress summary line when available
- pointer to full details in Claw-Empire chat
- The first report line is now generated with agent identity (avatar + name) instead of fixed generic completion wording.
- This keeps in-messenger readability high while preserving full report detail in the in-app chat thread.
API and Behavior Notes
- Direct messenger endpoints remain under
/api/messenger/*. /api/inboxnow includes decision-reply bridge handling before regular agent-chat reply scheduling when applicable.- Messenger session payloads support per-session
agentIdmapping. .envmessenger token/channel variables are no longer the primary config path; UI/DB configuration is the canonical runtime source.
Verification Summary
- Type check:
pnpm -s tsc -b --pretty false(pass)
- Targeted tests:
pnpm -s vitest --config server/vitest.config.ts run server/gateway/client.test.ts server/messenger/session-agent-routing.test.ts server/modules/routes/collab/direct-chat.normalize.test.ts(pass)
Compatibility Notes
- Slack typing indicator remains no-op due provider/API constraints.
- For stricter environments, set
PROJECT_PATH_ALLOWED_ROOTSexplicitly instead of relying on defaults.
Assets 2
Claw-Empire v1.2.2
Claw-Empire v1.2.2 Release Notes
- Release date: 2026年02月26日
- Scope: Post-v1.2.1 functional release introducing the interrupt-inject workflow (paused-session prompt injection), plus task-control security hardening and per-agent CLI model override controls from Office Agent Detail.
Highlights
Interrupt-Inject Feature Rollout
- New paused-session prompt injection endpoint: Added
POST /api/tasks/:id/injectto queue sanitized interrupt prompts for paused runs. - Session-proofed control path:
- Added task interrupt control token validation (
x-task-interrupt-tokenor request bodyinterrupt_token). - Added CSRF validation gate for cookie-authenticated task mutations (
stop,resume,inject).
- Added task interrupt control token validation (
- Queued injection persistence:
- Added
task_interrupt_injectionsflow helpers (sanitize/hash/queue/consume) and prompt hash audit logs. - Terminal API now returns interrupt proof payload (
session_id,control_token,requires_csrf) to support safe UI resume/inject flows.
- Added
- TerminalPanel operational UX:
- Added Interrupt/Inject panel with pause-only, inject+resume, and resume-only actions.
- Added short retry strategy for pending proof retrieval and clear multilingual operator feedback messages.
- Verification coverage:
- Added route and workflow unit tests for interrupt token handling, CSRF constraints, and injection queue behavior.
- Added HTTP smoke helper script:
scripts/qa/interrupt-inject-http-smoke.mjs.
Agent-Level CLI Model Overrides (Office)
- Schema/API extension for agents:
- Added
agents.cli_modelandagents.cli_reasoning_level. - Extended
/api/agents/:idpatch validation and provider-aware cleanup rules.
- Added
- Agent Detail editor upgrade:
- CLI providers (
claude,codex,gemini,opencode) can now set per-agent main model overrides directly in Office. - Codex adds per-agent reasoning effort override (
low/medium/high/xhigh) with default fallback support. - When set to default, runtime uses global Settings model config as before.
- Sub-agent model selection remains driven by global Settings (
providerModelConfig.subModel), not per-agent override.
- CLI providers (
- Runtime override propagation:
- Applied to all major execution entry points:
- task run
- resume/start orchestration path
- one-shot runner
- direct spawn
- delegated subtask batch
- cross-department cooperation
- Applied to all major execution entry points:
Planning-Lead No-Tools Fast Path
- Team-lead meetings keep no-tools policy:
- Planned approval and review consensus one-shot rounds execute with
noTools: truefor faster turn completion.
- Planned approval and review consensus one-shot rounds execute with
- Decision inbox planning consolidation now no-tools:
- Project-level review planning consolidation (
project_review_ready) runs withnoTools: true. - Review-round planning consolidation (
review_round_pick) runs withnoTools: true.
- Project-level review planning consolidation (
- Final report consolidation now no-tools:
- Planning leader's final consolidated archive generation runs with
noTools: trueto reduce tool-call overhead.
- Planning leader's final consolidated archive generation runs with
UI/Theme Readability Polish
- Interrupt action contrast fix:
- Added theme-level danger tokens and updated interrupt button styling for better readability in light mode.
API/Docs Updates
- Updated API docs (
docs/api.md) to include:- CSRF bootstrap/header expectations
- Interrupt session proof requirements
- New
POST /api/tasks/:id/injectendpoint
Notable Files
- Interrupt control and injection:
server/modules/routes/core/tasks/execution-control.tsserver/modules/workflow/core/interrupt-injection-tools.tssrc/components/TerminalPanel.tsxsrc/api/organization-projects.ts
- Agent-level CLI model overrides:
src/components/AgentDetail.tsxserver/modules/routes/core/agents/crud.tsserver/modules/routes/core/tasks/execution-run.tsserver/modules/workflow/orchestration/execution-start-task.tsserver/modules/workflow/core/one-shot-runner.ts
- Planning-lead no-tools policy coverage:
server/modules/workflow/orchestration/planned-approval.tsserver/modules/workflow/orchestration/meetings/review-consensus.tsserver/modules/routes/ops/messages/decision-inbox/project-review-planning.tsserver/modules/routes/ops/messages/decision-inbox/review-round-planning.tsserver/modules/workflow/orchestration/planning-archive-tools.ts
- Schema/type updates:
server/modules/bootstrap/schema/base-schema.tsserver/modules/bootstrap/schema/oauth-runtime.tssrc/types/index.tsserver/modules/routes/shared/types.ts
Verification Summary
pnpm lint(passes; existing repository warnings unchanged)pnpm build(passes)pnpm test:api(passes)
Assets 2
Claw-Empire v1.2.1
Claw-Empire v1.2.1 Release Notes
- Release date: 2026年02月26日
- Scope: Post-v1.2.0 hardening and maintainability release focused on CI reliability, runtime safety, type debt reduction, and documentation/API discoverability.
Highlights
Core Hotfixes
- Task route split recovery: Fixed production build/runtime breakage by restoring missing core task route registrations after modular split (
crud,execution,subtasks) in the main route wiring. - Workflow Unicode guard: Added CI protection against hidden/bidi Unicode characters in
.github/workflows/*.ymlto mitigate Trojan Source-style risks.
CI and Toolchain Hardening
- pnpm version alignment: Removed conflicting pnpm version declarations between workflow and
packageManager, resolvingERR_PNPM_BAD_PM_VERSIONclass failures. - Trigger coverage update: CI now runs on
pushtomain,pull_request, and manual dispatch. - Least privilege: Explicit
permissions: { contents: read }applied to CI workflow. - Explicit build gates:
pnpm exec tsc -p tsconfig.json --noEmitpnpm run build
- Formatting enforcement reliability: Repository-wide Prettier normalization to satisfy
format:checkdeterministically in CI.
Lint Baseline and Gradual Tightening
- ESLint Flat Config rollout with TypeScript and React Hooks coverage in CI.
- Safe warning cleanup pass across runtime/orchestration hotspots (empty blocks, useless escapes where safely removable, and related non-behavioral lint debt).
- Incremental strictness path introduced via
lint-stagedfor staged-file quality gates (targeted tightening without forcing full-repo churn).
RuntimeContext and Type-Debt Refactor
- Dependency-surface reduction across route modules to reduce giant runtime context coupling and improve reviewability.
- Decision Inbox type unification:
- Removed duplicated
DecisionInboxRouteItemdeclaration. - Consolidated shared type usage through
decision-inbox/types.ts.
- Removed duplicated
- App orchestration extraction:
- Added
src/app/useAppBootstrapData.tsfor initial bootstrap fetch/sync logic. - Added
src/app/useLiveSyncScheduler.tsfor live sync scheduling and dedup logic. - Reduced logic density in
src/App.tsxwithout changing user-facing behavior.
- Added
Meeting Timeout Reliability and Clarity
- Explicit timeout unit default:
- Standardized
REVIEW_MEETING_ONESHOT_TIMEOUT_MSdefault to65000(milliseconds) in docs/migration defaults to avoid unit ambiguity.
- Standardized
- Backward compatibility:
- Existing values like
65are still accepted and interpreted as seconds (<= 600-> seconds), preserving prior user setups.
- Existing values like
- Timeout resilience:
- Added one-shot meeting timeout retry path with compacted prompts for review/approval phases to reduce interruption risk during longer planning discussions.
Test Runtime Safety
- Test DB/runtime isolation hardening:
- Reinforced separation of test runtime data from production runtime paths.
- Added setup-level safety posture for future integration tests to prevent accidental production DB usage.
API and Security Documentation Surface
- Swagger/OpenAPI route exposure: Added Swagger documentation endpoint with linked OpenAPI spec (
docs/openapi.json) for contract visibility. - OpenAPI contract automation:
- Added
openapi:syncandopenapi:checkworkflows to keep spec drift visible and enforceable. - CI now validates OpenAPI structure and fails when
docs/openapi.jsonis out of sync. - Added baseline request/response examples and standardized error response coverage (
401/403/409/429/500) across documented operations.
- Added
- Documentation refresh:
- Updated multilingual READMEs (
README.md,README_ko.md,README_jp.md,README_zh.md). - Added CI status badges and current CI validation flow.
- Added clear links to API docs and
SECURITY.md.
- Updated multilingual READMEs (
Notable Files and Areas
- CI / workflow:
.github/workflows/ci.yml
- Quality/tooling:
eslint.config.mjspackage.jsonpnpm-lock.yamlscripts/openapi-contract.mjs
- Runtime/routes refactor and type cleanup:
server/modules/routes/core.tsserver/modules/routes/ops/messages/decision-inbox-routes.tsserver/modules/routes/ops/messages/decision-inbox/types.tsserver/modules/routes/**(dependency-surface narrowing series)
- App orchestration split:
src/App.tsxsrc/app/useAppBootstrapData.tssrc/app/useLiveSyncScheduler.ts
- Docs/API/security:
docs/api.mddocs/openapi.jsonSECURITY.mdREADME*.md.env.examplescripts/auto-apply-v1.0.5.mjs
- Meeting orchestration:
server/modules/workflow/orchestration.tsserver/modules/workflow/orchestration/planned-approval.tsserver/modules/workflow/orchestration/meetings/review-consensus.ts
Verification Summary
- Local quality/build checks executed during stabilization:
pnpm run lint(passes with warnings policy)pnpm run build(passes)
- CI workflow now includes explicit format, lint, typecheck, build, and test gates with pnpm-version consistency and minimum permissions.
Assets 2
Claw-Empire v1.2.0
Claw-Empire v1.2.0 Release Notes
- Release date: 2026年02月25日
- Scope: Agent management (hire/edit/delete), department CRUD, department management tab, new pixel character sprite (#13), project-level manual agent assignment, meeting participant filtering for manual projects, mobile-responsive Project Manager, custom skill upload system, bug fixes, plus post-release hardening and engineering-quality updates merged into v1.2.0.
Highlights
Agent Management (CRUD)
- Hire New Agent - Full agent creation UI in Agent Manager with name (multilingual: en/ko/ja/zh), department, role (team_leader/senior/junior/intern), CLI provider, sprite number, avatar emoji, and personality fields.
- Edit Agent - Inline edit for all agent fields including provider/model reassignment.
- Delete Agent - Safe deletion with working-status guard; cascading NULL-ification on tasks, subtasks, meeting minutes, report archives, and review decision states.
- Backend:
POST /api/agents,PATCH /api/agents/:id,DELETE /api/agents/:idendpoints with WebSocket broadcast (agent_created,agent_deleted).
Department CRUD
- Create Department - Full department creation with ID validation (
a-z0-9pattern), multilingual names, icon, color picker, description, and prompt. - Edit Department - Inline editing of all department properties.
- Delete Department - Removal with associated agent/task guards.
- Backend:
POST /api/departments,PATCH /api/departments/:id,DELETE /api/departments/:idendpoints withdepartments_changedbroadcast.
Department Management Tab
- Added subtab toggle (
Agents | Departments) inside Agent Manager. - Department list view with sort order, icon, name, color, agent count, description, and ID.
- Sort order editing via arrow buttons and drag-and-drop, with batch save.
- Backend:
PATCH /api/departments/reorderendpoint using temporary high-valuesort_orderto avoid UNIQUE constraint conflicts during reorder. - Routing guard added so
/api/departments/reorderis not captured by/api/departments/:id.
New Character Sprite (Sprite #13)
- Added a new pixel character with full directional sprite set (D-1/D-2/D-3, L-1, R-1).
- Added a sprite generation pipeline script.
- AgentAvatar and OfficeView updated for sprite #13 support.
Project Manual Agent Assignment
- Projects now support
assignment_mode:auto(default) ormanual. - In manual mode, specific agents can be assigned via multi-select checkbox UI with sprite avatar icons and department/role labels.
- New DB schema:
assignment_modecolumn onprojectstable +project_agentsjunction table. - Backend CRUD:
POST /api/projectsandPATCH /api/projects/:idacceptassignment_modeandagent_ids. GET /api/projectsandGET /api/projects/:idreturnassigned_agent_idsper project.
Meeting Participant Filtering (Manual Mode)
- When a project uses
assignment_mode: manual, kickoff and review meetings only include:- Planning team leader (always included)
- Team leaders from departments of the assigned agents
fallbackAllexpansion (invite all active team leaders) is skipped for manual-mode projects.- Applies to both kickoff (
startPlannedApprovalMeeting) and review (startReviewConsensusMeeting) meetings.
Task Delegation with Manual Mode
findBestSubordinateincollab.tsaccepts optionalcandidateAgentIds.- Manual mode queries
project_agentsand restricts candidates to the assigned agent pool. - Candidate filtering is additionally constrained to the active team leader's department.
- If no assigned candidate exists for that department in manual mode, fallback to full-department auto selection is blocked.
- Auto mode projects retain existing delegation logic unchanged.
ChatPanel Manual Mode Indicator
- Project confirm step displays assigned agent count for manual-mode projects (for example: "Manual mode - 2 assigned agents will work on this").
Mobile-Responsive Project Manager
- List-detail toggle pattern for mobile viewports (below
md/ 768px):- Project list takes full width when no project is selected.
- Selecting a project or creating new hides the list and shows detail view.
- Mobile-only back button returns to project list.
- Desktop layout remains side-by-side.
Bug Fixes
- Fixed project save
500caused by unresolvedrunInTransactionbinding incore.ts. - Improved light-mode error readability in
ProjectManagerModal(text-rose-800/text-cyan-800variants). - Fixed
/api/departments/reordersave failure caused by route collision with/api/departments/:id. - Added internal scroll behavior for Agent Manager emoji picker (
max-h+overflow-y-auto). - Added internal scroll behavior for Agent Manager hire/edit modal (
max-h+overflow-y-auto).
Custom Skill Upload System
- Custom skill CRUD — Users can upload
.mdskill files directly through the Skills Library UI, name the skill, select CLI representatives to train, and delete existing custom skills. - Classroom training animation — Uploading a custom skill triggers a full-screen chalkboard classroom animation showing the claw-empire mascot as teacher and CLI representative agents as students.
- Backend endpoints:
POST /api/skills/custom(upload),GET /api/skills/custom(list),DELETE /api/skills/custom/:skillName(delete) with file-based storage undercustom-skills/directory andskill_learning_historyDB records. - Frontend API client:
uploadCustomSkill(),getCustomSkills(),deleteCustomSkill()added tosrc/api.ts. - Light mode support: Full light-mode CSS overrides for custom skill buttons, modal, list cards, and classroom animation overlay.
Post-release Hardening (still v1.2.0)
- Manual assignment pre-save safeguard modal: Project Manager now warns when manual assignment is saved with no selected agents or team-leader-only selections, showing selection summary and requiring explicit confirmation.
- Manual selection visibility: Manual assignment UI now shows live counts (
total,leaders,subordinates) to prevent accidental subordinate omission. - Project API
agent_idsvalidation:POST /api/projectsandPATCH /api/projects/:idnow validateagent_idstype and existence; invalid IDs are rejected with explicit error payloads. - Delegation fallback auditability: In manual mode, when no eligible subordinate exists in assigned candidates, system logs explicit fallback context and sends a CEO-facing safeguard notice before team-leader direct execution.
- Sprite registration conflict guard:
POST /api/sprites/registernow returns409 sprite_number_existsif target sprite files already exist, preventing accidental overwrite. - Portable sprite generation script: Sprite generation now resolves output path relative to repository and auto-creates
public/sprites, removing machine-specific absolute path dependency. - Department sort_order UNIQUE index safe migration:
server-main.tsnow drops and re-creates theidx_departments_sort_orderUNIQUE index around sort_order seed updates to avoid constraint violations during migration.
Engineering Quality Pack (still v1.2.0)
- Codebase modularization (frontend + backend):
- Backend route/workflow decomposition moved large route domains into feature folders under
server/modules/routes/*andserver/modules/workflow/*(for example:core/agents,core/projects,core/tasks,ops/messages,ops/oauth,ops/skills,ops/task-reports,ops/terminal,collab/coordination). - Frontend decomposition moved oversized UI surfaces into feature directories under
src/components/*(for example:office-view,taskboard,settings,chat,project-manager,agent-manager) with main entry modules plus focused submodules. - Goal: keep behavior equivalent while reducing single-file complexity for reviewability, targeted testing, and safer incremental changes.
- Backend route/workflow decomposition moved large route domains into feature folders under
- Type-debt cleanup (
@ts-nocheckremoval):- Removed server-side
@ts-nocheckusage in runtime/security-related modules and replaced broad escapes with explicit shared/runtime type boundaries. - Refactoring was done alongside helper extraction to preserve pre-existing API behavior and response contracts.
- Removed server-side
- Repository-wide formatting standardization:
- Added Prettier baseline (
.prettierrc.json,.prettierignore) and package scripts (format,format:check). - Wired CI to run
pnpm run format:checkso formatting regressions fail fast before merge. - Result: consistent diffs and easier multi-file review after large modular refactors.
- Added Prettier baseline (
- Test code expansion (E2E + unit):
- New CI E2E gap suite:
tests/e2e/ci-coverage-gap.spec.ts. - Expanded coverage areas include full task lifecycle, Department/Agent/Project CRUD smoke flows, chat/directive path, settings + stats load, decision inbox path, report/terminal flows, and WebSocket event reception.
- Frontend unit tests expanded with
src/api.test.ts,src/hooks/useWebSocket.test.tsx,src/hooks/usePolling.test.tsx, andsrc/i18n.test.ts. - Backend unit tests expanded with
server/security/auth.test.ts,server/ws/hub.test.ts,server/db/runtime.test.ts, andserver/gateway/client.test.ts.
- New CI E2E gap suite:
- CI E2E stabilization:
- Added transient 502/503 retry handling in polling paths used by E2E coverage flows.
- Set deterministic Playwright CI defaults (
workers: 1,reuseExistingServer: false) to reduce flaky outcomes.
Changed Files
Frontend
src/types/index.ts- AddedAssignmentModeand extendedProject.src/api.ts- AddedreorderDepartments(), extended project CRUD fields, custom skill API functions (uploadCustomSkill,getCustomSkills,deleteCustomSkill).src/api.test.ts- Request format, retry/auth, idempotency-post, and error-shape coverage.src/App.tsx- Agent/department live-sync updates.- `src/components/AgentManag...
Assets 2
Claw-Empire v1.1.9
Claw-Empire v1.1.9 Release Notes
- Release date: 2026年02月23日
- Scope: Post-v1.1.8 reliability fixes for sub-agent status sync, delegated review-gate pause/resume behavior, and Decision Inbox review-round skip routing.
Highlights
-
Sub-agent Status Sync Hardening
- Unknown or out-of-order
agent_statuspayloads now trigger canonical live sync instead of appending unknown agents directly. - Added bounded Codex thread-binding guardrails (TTL + max-size pruning) to prevent stale thread mapping growth.
- Unknown or out-of-order
-
Codex Thread Binding Cleanup on Completion
- When a sub-agent is marked done, related Codex thread bindings are removed immediately.
- Prevents delayed stream fragments from incorrectly finalizing unrelated/stale sub-agent entries.
-
Delegated Pause/Resume Review-Gate Hotfix
- Paused delegated runs no longer finalize linked subtasks as
blockedon graceful interrupt exits. - Linked delegated subtasks are now reconciled after run completion (
doneon success,blockedon real failure).
- Paused delegated runs no longer finalize linked subtasks as
-
Review Completion Auto-heal for Stale Delegations
- During review completion, stale
blockeddelegated subtasks are auto-recovered when their delegated task already reachedreview/done. - Parent review completion is retried automatically once all remaining linked subtasks are resolved.
- During review completion, stale
-
Decision Inbox Round-Skip Routing Fix
- Fixed runtime wiring for
scheduleNextReviewRoundused byreview_round_pick -> skip_to_next_round. - Prevents false reply errors and unintended fallback into project-level decision/team-lead meeting flow.
- Added rollback guard: if next-round scheduling fails, the meeting state is reverted to
revision_requestedinstead of stayingcompleted.
- Fixed runtime wiring for
Changed Files
Frontend
src/App.tsx
Backend
server/modules/routes/collab.tsserver/modules/routes/ops/messages.tsserver/modules/runtime-helper-keys.tsserver/modules/workflow.tsserver/modules/workflow/orchestration.tsserver/types/runtime-context.ts
Docs
README.mdREADME_ko.mdREADME_jp.mdREADME_zh.mddocs/releases/README.mddocs/releases/v1.1.9.md
Verification
pnpm run test:apivitest --config server/vitest.config.tspassed (29 tests)