feat: add office-agent document workflow (template + writer + differ) #327

Merged
jiayi merged 10 commits from user/jiayiyan/feat_office-agent-document-template-v2 into main 2026-05-18 13:42:03 +00:00
Member

Summary

  • workflow-template-document — pure workflow structure: writer/differ role definitions (Zod v4 discriminated union), ModeratorTable, documentWorkflowDefinition, buildDocumentDescriptor()
  • workflow-agent-officeAdapterFn calling office-agent CLI; generate mode produces output.docx, edit mode snapshots original.docx + overwrites modified.docx; exports packageDescriptor
  • workflow-agent-docx-diffAdapterFn calling docx-diff CLI; treats exit 0/1 as success, exit ≥2 as error; exports packageDescriptor

Both agents implement AdapterFn directly (schema.parse(JSON.parse(raw))), skipping LLM extraction for deterministic CLI output.

Architecture

START → writer ──(edit mode)──→ differ → END
↘(generate mode)→ END

Writer saves two workflow-owned files in edit mode (original.docx + modified.docx), so differ never depends on the user's original path.

## Summary - **`workflow-template-document`** — pure workflow structure: writer/differ role definitions (Zod v4 discriminated union), ModeratorTable, `documentWorkflowDefinition`, `buildDocumentDescriptor()` - **`workflow-agent-office`** — `AdapterFn` calling `office-agent` CLI; generate mode produces `output.docx`, edit mode snapshots `original.docx` + overwrites `modified.docx`; exports `packageDescriptor` - **`workflow-agent-docx-diff`** — `AdapterFn` calling `docx-diff` CLI; treats exit 0/1 as success, exit ≥2 as error; exports `packageDescriptor` Both agents implement `AdapterFn` directly (`schema.parse(JSON.parse(raw))`), skipping LLM extraction for deterministic CLI output. ## Architecture START → writer ──(edit mode)──→ differ → END ↘(generate mode)→ END Writer saves two workflow-owned files in edit mode (`original.docx` + `modified.docx`), so differ never depends on the user's original path.
jiayi added 9 commits 2026-05-18 13:29:24 +00:00
Add package.json, tsconfig.json, and placeholder src/index.ts for the
@uncaged/workflow-template-document package; register it in root tsconfig.json references.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add package.json, tsconfig.json, and placeholder src/index.ts for
@uncaged/workflow-agent-docx-diff; append reference in root tsconfig.json.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Implements createDocxDiffAgent (AdapterFn), packageDescriptor, and exports in index.ts; 9 tests pass (runner 6 + agent 3).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
jiayi added 1 commit 2026-05-18 13:36:16 +00:00
jiayi merged commit 86dd37b0c8 into main 2026-05-18 13:42:03 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: uncaged/workflow#327