@starlein/paperclip-plugin-company-wizard 0.4.22 → 0.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +120 -0
- package/README.md +29 -15
- package/dist/manifest.js +24 -9
- package/dist/manifest.js.map +2 -2
- package/dist/ui/index.css +636 -589
- package/dist/ui/index.css.map +2 -2
- package/dist/ui/index.js +365 -60
- package/dist/ui/index.js.map +4 -4
- package/dist/worker.js +22374 -5375
- package/dist/worker.js.map +4 -4
- package/docs/PAPERCLIP-COMPATIBILITY.md +66 -0
- package/package.json +10 -10
- package/templates/ai-wizard/interview-system.md +2 -0
- package/templates/ai-wizard/single-shot-system.md +2 -0
- package/templates/bootstrap-instructions.md +3 -3
- package/templates/modules/accessibility/agents/engineer/skills/accessibility-audit.fallback.md +2 -2
- package/templates/modules/accessibility/agents/ui-designer/skills/accessibility-audit.fallback.md +2 -2
- package/templates/modules/accessibility/module.meta.json +1 -1
- package/templates/modules/accessibility/skills/accessibility-audit.bar.md +1 -1
- package/templates/modules/accessibility/skills/accessibility-audit.md +1 -1
- package/templates/modules/architecture-plan/agents/ceo/skills/architecture-plan.bar.md +2 -2
- package/templates/modules/architecture-plan/agents/ceo/skills/architecture-plan.fallback.md +2 -2
- package/templates/modules/architecture-plan/agents/engineer/skills/design-system.fallback.md +2 -2
- package/templates/modules/architecture-plan/agents/ui-designer/skills/architecture-plan.md +2 -2
- package/templates/modules/architecture-plan/agents/ui-designer/skills/design-system.md +3 -3
- package/templates/modules/architecture-plan/module.meta.json +2 -2
- package/templates/modules/architecture-plan/skills/architecture-plan.bar.md +1 -1
- package/templates/modules/architecture-plan/skills/architecture-plan.md +3 -3
- package/templates/modules/architecture-plan/skills/design-system.md +5 -5
- package/templates/modules/auto-assign/README.md +4 -4
- package/templates/modules/auto-assign/agents/ceo/heartbeat-section.md +1 -1
- package/templates/modules/auto-assign/agents/ceo/skills/auto-assign.fallback.md +6 -6
- package/templates/modules/auto-assign/agents/product-owner/heartbeat-section.md +1 -1
- package/templates/modules/auto-assign/module.meta.json +1 -1
- package/templates/modules/auto-assign/skills/auto-assign.md +3 -2
- package/templates/modules/backlog/agents/ceo/heartbeat-section.md +1 -1
- package/templates/modules/backlog/agents/ceo/skills/backlog-health.fallback.md +9 -9
- package/templates/modules/backlog/agents/product-owner/heartbeat-section.md +1 -1
- package/templates/modules/backlog/docs/backlog-process.md +36 -21
- package/templates/modules/backlog/docs/backlog-template.md +10 -9
- package/templates/modules/backlog/module.meta.json +2 -2
- package/templates/modules/backlog/skills/backlog-health.bar.md +3 -3
- package/templates/modules/backlog/skills/backlog-health.md +16 -15
- package/templates/modules/brand-identity/agents/ceo/skills/brand-identity.fallback.md +2 -2
- package/templates/modules/brand-identity/agents/cmo/skills/brand-identity.fallback.md +2 -2
- package/templates/modules/brand-identity/module.meta.json +1 -1
- package/templates/modules/brand-identity/skills/brand-identity.bar.md +1 -1
- package/templates/modules/brand-identity/skills/brand-identity.md +3 -3
- package/templates/modules/build-api/skills/api-design.bar.md +1 -1
- package/templates/modules/build-api/skills/api-design.md +1 -1
- package/templates/modules/ci-cd/agents/devops/skills/ci-cd.md +1 -1
- package/templates/modules/ci-cd/agents/engineer/skills/ci-cd.fallback.md +2 -2
- package/templates/modules/ci-cd/module.meta.json +1 -1
- package/templates/modules/ci-cd/skills/ci-cd.bar.md +1 -1
- package/templates/modules/ci-cd/skills/ci-cd.md +6 -4
- package/templates/modules/codebase-onboarding/agents/ceo/skills/codebase-audit.fallback.md +5 -5
- package/templates/modules/codebase-onboarding/module.meta.json +1 -1
- package/templates/modules/codebase-onboarding/skills/codebase-audit.bar.md +1 -1
- package/templates/modules/codebase-onboarding/skills/codebase-audit.md +2 -2
- package/templates/modules/competitive-intel/agents/ceo/skills/competitive-tracking.fallback.md +2 -2
- package/templates/modules/competitive-intel/agents/cmo/skills/competitive-tracking.fallback.md +2 -2
- package/templates/modules/competitive-intel/agents/customer-success/skills/competitive-tracking.md +2 -2
- package/templates/modules/competitive-intel/agents/product-owner/skills/competitive-tracking.fallback.md +2 -2
- package/templates/modules/competitive-intel/module.meta.json +1 -1
- package/templates/modules/competitive-intel/skills/competitive-tracking.bar.md +2 -2
- package/templates/modules/competitive-intel/skills/competitive-tracking.md +3 -3
- package/templates/modules/dependency-management/agents/engineer/skills/dependency-audit.fallback.md +2 -2
- package/templates/modules/dependency-management/agents/security-engineer/skills/dependency-audit.fallback.md +2 -2
- package/templates/modules/dependency-management/module.meta.json +2 -2
- package/templates/modules/dependency-management/skills/dependency-audit.md +2 -2
- package/templates/modules/game-design/agents/ceo/skills/game-design.fallback.md +1 -1
- package/templates/modules/game-design/agents/engineer/skills/game-design.fallback.md +1 -1
- package/templates/modules/game-design/agents/game-designer/skills/game-design.md +2 -2
- package/templates/modules/game-design/module.meta.json +1 -1
- package/templates/modules/game-design/skills/audio-design.fallback.md +2 -2
- package/templates/modules/game-design/skills/audio-design.md +3 -3
- package/templates/modules/game-design/skills/game-design.bar.md +1 -1
- package/templates/modules/game-design/skills/game-design.md +3 -3
- package/templates/modules/game-design/skills/level-design.fallback.md +2 -2
- package/templates/modules/game-design/skills/level-design.md +4 -4
- package/templates/modules/github-repo/agents/engineer/skills/git-workflow.md +15 -14
- package/templates/modules/github-repo/docs/git-workflow.md +7 -7
- package/templates/modules/github-repo/module.meta.json +1 -1
- package/templates/modules/lean-delivery/docs/lean-delivery.md +15 -0
- package/templates/modules/lean-delivery/module.meta.json +6 -0
- package/templates/modules/market-analysis/agents/ceo/skills/market-analysis.fallback.md +2 -2
- package/templates/modules/market-analysis/agents/cmo/skills/market-analysis.fallback.md +2 -2
- package/templates/modules/market-analysis/agents/product-owner/skills/market-analysis.fallback.md +2 -2
- package/templates/modules/market-analysis/agents/ux-researcher/skills/market-analysis.md +2 -2
- package/templates/modules/market-analysis/module.meta.json +1 -1
- package/templates/modules/market-analysis/skills/market-analysis.bar.md +1 -1
- package/templates/modules/market-analysis/skills/market-analysis.md +2 -2
- package/templates/modules/monitoring/agents/devops/skills/monitoring.md +1 -1
- package/templates/modules/monitoring/agents/engineer/skills/monitoring.fallback.md +2 -2
- package/templates/modules/monitoring/module.meta.json +1 -1
- package/templates/modules/monitoring/skills/monitoring.bar.md +1 -1
- package/templates/modules/monitoring/skills/monitoring.md +3 -3
- package/templates/modules/pr-review/README.md +10 -12
- package/templates/modules/pr-review/agents/code-reviewer/skills/code-review.md +16 -13
- package/templates/modules/pr-review/agents/devops/skills/infra-review.md +2 -2
- package/templates/modules/pr-review/agents/engineer/skills/pr-workflow.md +36 -26
- package/templates/modules/pr-review/agents/product-owner/skills/product-review.md +8 -8
- package/templates/modules/pr-review/agents/qa/skills/qa-review.md +10 -10
- package/templates/modules/pr-review/agents/security-engineer/skills/pr-security-review.md +5 -4
- package/templates/modules/pr-review/agents/ui-designer/skills/design-review.md +4 -4
- package/templates/modules/pr-review/agents/ux-researcher/skills/ux-review.md +3 -3
- package/templates/modules/pr-review/docs/pr-conventions.md +22 -26
- package/templates/modules/pr-review/module.meta.json +2 -2
- package/templates/modules/release-management/agents/ceo/skills/release-process.fallback.md +2 -2
- package/templates/modules/release-management/agents/engineer/skills/release-process.fallback.md +2 -2
- package/templates/modules/release-management/module.meta.json +3 -3
- package/templates/modules/release-management/skills/release-process.md +2 -2
- package/templates/modules/security-audit/agents/devops/skills/security-review.fallback.md +2 -2
- package/templates/modules/security-audit/agents/devops/skills/threat-model.fallback.md +2 -2
- package/templates/modules/security-audit/agents/engineer/skills/security-review.fallback.md +2 -2
- package/templates/modules/security-audit/agents/engineer/skills/threat-model.fallback.md +2 -2
- package/templates/modules/security-audit/module.meta.json +2 -2
- package/templates/modules/security-audit/skills/security-review.bar.md +1 -1
- package/templates/modules/security-audit/skills/security-review.md +1 -1
- package/templates/modules/security-audit/skills/threat-model.bar.md +1 -1
- package/templates/modules/security-audit/skills/threat-model.md +3 -3
- package/templates/modules/stall-detection/agents/ceo/heartbeat-section.md +1 -1
- package/templates/modules/stall-detection/agents/ceo/skills/stall-detection.md +19 -16
- package/templates/modules/tech-stack/agents/ceo/skills/tech-stack.fallback.md +2 -2
- package/templates/modules/tech-stack/module.meta.json +1 -1
- package/templates/modules/tech-stack/skills/tech-stack.bar.md +1 -1
- package/templates/modules/tech-stack/skills/tech-stack.md +2 -2
- package/templates/modules/triage/agents/ceo/skills/issue-triage.fallback.md +1 -1
- package/templates/modules/triage/agents/engineer/skills/issue-triage.fallback.md +1 -1
- package/templates/modules/triage/skills/issue-triage.md +1 -1
- package/templates/modules/user-testing/agents/ceo/skills/user-testing.fallback.md +2 -2
- package/templates/modules/user-testing/agents/product-owner/skills/user-testing.fallback.md +2 -2
- package/templates/modules/user-testing/agents/qa/skills/user-testing.md +2 -2
- package/templates/modules/user-testing/agents/ux-researcher/skills/user-testing.fallback.md +2 -2
- package/templates/modules/user-testing/module.meta.json +1 -1
- package/templates/modules/user-testing/skills/user-testing.md +2 -2
- package/templates/modules/vision-workshop/agents/ceo/skills/vision-workshop.md +2 -2
- package/templates/modules/vision-workshop/agents/ux-researcher/skills/vision-workshop.md +1 -1
- package/templates/modules/vision-workshop/module.meta.json +1 -1
- package/templates/modules/website-relaunch/agents/ui-designer/skills/site-audit.md +1 -1
- package/templates/modules/website-relaunch/module.meta.json +7 -7
- package/templates/modules/website-relaunch/skills/design-ingestion.md +1 -1
- package/templates/modules/website-relaunch/skills/site-audit.md +1 -1
- package/templates/presets/build-game/preset.meta.json +6 -6
- package/templates/presets/repo-maintenance/preset.meta.json +20 -21
- package/templates/roles/audio-designer/HEARTBEAT.md +1 -1
- package/templates/roles/ceo/AGENTS.md +2 -0
- package/templates/roles/ceo/HEARTBEAT.md +1 -1
- package/templates/roles/ceo/role.meta.json +1 -1
- package/templates/roles/cmo/HEARTBEAT.md +1 -1
- package/templates/roles/code-reviewer/AGENTS.md +3 -1
- package/templates/roles/code-reviewer/HEARTBEAT.md +1 -1
- package/templates/roles/cto/HEARTBEAT.md +1 -1
- package/templates/roles/customer-success/HEARTBEAT.md +1 -1
- package/templates/roles/devops/HEARTBEAT.md +1 -1
- package/templates/roles/engineer/AGENTS.md +3 -3
- package/templates/roles/engineer/HEARTBEAT.md +2 -2
- package/templates/roles/game-artist/HEARTBEAT.md +1 -1
- package/templates/roles/game-designer/HEARTBEAT.md +1 -1
- package/templates/roles/level-designer/HEARTBEAT.md +1 -1
- package/templates/roles/product-owner/AGENTS.md +1 -1
- package/templates/roles/product-owner/HEARTBEAT.md +2 -2
- package/templates/roles/qa/HEARTBEAT.md +4 -4
- package/templates/roles/security-engineer/AGENTS.md +2 -2
- package/templates/roles/security-engineer/HEARTBEAT.md +1 -1
- package/templates/roles/technical-writer/HEARTBEAT.md +1 -1
- package/templates/roles/ui-designer/HEARTBEAT.md +1 -1
- package/templates/roles/ux-researcher/HEARTBEAT.md +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,126 @@ All notable changes to the Company Wizard plugin are documented here.
|
|
|
4
4
|
|
|
5
5
|
The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
6
6
|
|
|
7
|
+
## [0.6.2] - 2026-09-07
|
|
8
|
+
|
|
9
|
+
Follow-up review of the 0.6.1 consolidation against Paperclip source `3fb4b65f9d974d8687db8a060f20ec66b6071a79` (upstream master through 2026-09-06). Fixes two template defects that silently dropped provisioned routines and a set of instruction/doc drifts left by the Skills Store migration.
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- Routines in the `dependency-management` and `release-management` modules declared `concurrencyPolicy: "forbid"`, which is not in Paperclip's `createRoutineSchema` enum (`coalesce_if_active` | `always_enqueue` | `skip_if_active`). The create/sync call was rejected with a 400 and swallowed as a warning, so both routines — and their cron triggers — were never created, in the `repo-maintenance` preset and any manual selection of those modules. Both now declare `skip_if_active`, and `routineConcurrencyPolicy()` maps the legacy spelling (and any unknown value) before the payload is sent, so a custom template source cannot lose a routine the same way.
|
|
14
|
+
- The same two routines were keyed by the legacy `name` field, which the BOOTSTRAP.md renderer did not read: the CEO's bootstrap issue listed them as `### undefined`. Templates now use `title`, and both the renderer and provisioning resolve the title through the shared `routineTitle()` helper.
|
|
15
|
+
- Heartbeat sections and role/skill instructions still pointed at `skills/<name>.md` files. Assembly stopped writing `agents/<role>/skills/` when skills moved to the Skills Store, so those paths did not exist. They now name the installed skill by slug (`auto-assign`, `auto-assign-fallback`, `backlog-health`, `backlog-health-fallback`, `stall-detection`, `git-workflow`, `pr-workflow`).
|
|
16
|
+
- Skill markdown, module docs, and module/preset issue text referenced shared docs as `../../docs/<file>.md`, which only resolves from `{company}/agents/<role>/`. They now use `docs/<file>.md`, relative to the agent's working directory (the company dir). `roles/*/AGENTS.md` and the generated "Shared Documentation" list keep the file-relative form, which is correct there.
|
|
17
|
+
- Review-gate instructions quoted the wrong 422. An author-only stage fails when Paperclip selects the participant — `No eligible <review|approval> participant is configured for this issue` — and the PATCH is refused, so the issue never enters `in_review`. `Only the active reviewer or approver can advance the current execution stage` is the separate error for a non-participant advancing a pending stage. Corrected in `pr-conventions.md` and the engineer/QA heartbeats.
|
|
18
|
+
- Checkout guidance said `expectedStatuses` was used "when the API supports" it. `checkoutIssueSchema` requires both `agentId` and a non-empty `expectedStatuses`; all 17 role heartbeats now show the required request body.
|
|
19
|
+
- `docs/PAPERCLIP-COMPATIBILITY.md` explained the omitted `minimumHostVersion` with a `hostVersion` default of `"0.0.0"`. `app.ts` passes `opts.hostVersion ?? serverVersion`, resolved from `git describe`, a stamped build version, then the server package version; the real reason a numeric floor is unsafe is that packaged installs report that package version (`0.3.1`) against CalVer releases.
|
|
20
|
+
|
|
21
|
+
### Changed
|
|
22
|
+
|
|
23
|
+
- Review-round limits are now documented where agents act on them: after 3 consecutive agent-initiated `changes_requested` rounds on one stage (`DEFAULT_MAX_REVIEW_ROUNDS`, overridable per policy via `executionPolicy.maxReviewRounds`), Paperclip keeps the stage pending and hands it to the issue's responsible/creating human; a human decision resets the counter. Added to `pr-workflow`, `code-review`, and `pr-conventions.md`.
|
|
24
|
+
- Model suggestions track the current adapter catalogs: Codex gains `gpt-6-astra` and drops `gpt-5.5`, which the adapter catalog does not publish; Claude gains `claude-fable-5-1`. Defaults (`gpt-5.6-sol`, `claude-opus-4-8`) are unchanged, and the field stays free text.
|
|
25
|
+
- `effectiveExecutionPolicy()` no longer computes an unreachable isolated-worktree condition for existing projects (they return earlier with their stored policy). Behavior is unchanged: only a new project on an existing external repo can start isolated.
|
|
26
|
+
- New `src/logic/routines.js` helpers (`routineTitle`, `routineConcurrencyPolicy`, `ROUTINE_CONCURRENCY_POLICIES`) are shared by assembly and provisioning, with `tests/templates-contract.spec.ts` validating every shipped module/preset routine, issue, goal, and dependency against the enums Paperclip accepts.
|
|
27
|
+
|
|
28
|
+
## [0.6.1] - 2026-09-07
|
|
29
|
+
|
|
30
|
+
Consolidates the useful changes from PRs #44, #46 and #47 on a fresh branch from main. Compatibility reviewed against Paperclip source `856813ba3a083f23694b8554104b3e50abcb1363` (2026-09-06).
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- Lean delivery remains optional and unselected by built-in presets. It supplies one non-author Code Reviewer merge gate and risk-triggered evidence; standard PR review retains role-based stages. Fixed PR-count limits are removed across both modes: queue size is advisory, actual blockers and operator policies remain binding.
|
|
35
|
+
- SDK/shared development dependencies and peer floor move to `2026.831.1`. The manifest omits `minimumHostVersion`: current source starts its plugin loader at `0.0.0`, so a numeric floor incorrectly rejects it. API/capability validation remains active; see `docs/PAPERCLIP-COMPATIBILITY.md` for tested contracts and limitations.
|
|
36
|
+
- Default template selection is pinned to the installed release. Explicit local template directories are never overwritten; custom remote URLs use separate source-keyed caches, atomic refresh, and no implicit source change between preview and provisioning.
|
|
37
|
+
- Added current-stable schema contract tests for company, goal, project, issue, governed agent hire, routine/trigger, Company Skill, and plugin-manifest payloads.
|
|
38
|
+
|
|
39
|
+
### Fixed
|
|
40
|
+
|
|
41
|
+
- Pending hires are listed only for this wizard run, with explicit checkbox selection and server-side company/type/status validation. Partial failures remain visible. A separate **Start bootstrap** action verifies the CEO and issue, handles skipped wakeups, and restores a missing watchdog best-effort; provisioning never auto-approves hires or invokes this start action.
|
|
42
|
+
- Existing-company updates load and patch real project execution policies before hiring, preserving project IDs, workspaces, goal links, explicit concurrency/disabled settings, strategy hooks, and environment IDs. New project-scoped routines link to the existing main project.
|
|
43
|
+
- AI policy normalization and both bootstrap policy renderers retain all supported fields. Fresh local repositories defer isolation; remote/non-git paths are never initialized as Git repositories. The guard is explicitly documented as inactive when the instance feature or policy is disabled, and operator/issue overrides are preserved.
|
|
44
|
+
- Wizard manifests use company-scoped SDK state instead of a nonexistent company-settings REST endpoint. Retirement review issues use the correct parent issue field rather than issue IDs as project/goal IDs.
|
|
45
|
+
- Company Skill slug collisions no longer overwrite imported/catalog skills; only canonical editable company-managed skills are refreshed, and listing failures stop provisioning rather than creating duplicates.
|
|
46
|
+
- Review recovery uses actual execution-state ownership, managed worktree branch identity is preserved, required repository CI/protection is not disabled, and Product Owner handoffs do not close open-PR work prematurely.
|
|
47
|
+
- Production build command is portable across Windows and Unix. Added worker, schema, template-matrix, project-update, approval/bootstrap, and state-persistence regressions.
|
|
48
|
+
- Removed unused `esbuild-postcss-plugin` and refreshed affected development-tool dependencies (Vitest, esbuild, PostCSS and their transitive parsers/glob utilities). Documented and tested Node 24.11+ to match the published Paperclip SDK/shared host runtime requirement.
|
|
49
|
+
|
|
50
|
+
- Review instructions distinguish standard executionPolicy verdicts from lean advisory assignment handoffs. Capacity waits no longer become conjunctive dependencies in backlog/stall recovery, and CEO fallbacks run only on assigned planning/routine work.
|
|
51
|
+
- Review stages omit the issue's author, pending/failed required CI cannot be bypassed using local results, and baseline repair is explicitly assigned separately from the feature issue.
|
|
52
|
+
- Company Skill display-name refreshes preserve existing slugs and use the rename response's key for agent skill assignments, including role-disambiguated skills. The backlog snapshot also respects optional lean capacity instead of imposing it when deselected.
|
|
53
|
+
- Existing Company Skill content now updates through `PATCH /companies/:companyId/skills/:skillId/files` with `path: "SKILL.md"`, and display-name changes use the dedicated `/rename` endpoint. Newer Paperclip versions no longer silently discard `markdown` and `name` sent to the metadata-only skill PATCH route.
|
|
54
|
+
- Project provisioning and generated bootstrap instructions now always include the required `executionWorkspacePolicy.enabled` boolean whenever a project execution policy is present.
|
|
55
|
+
- Triggered QA, Security, Product, UI/UX, and DevOps evidence now has an explicit same-issue assignment wake-and-return path before the Code Reviewer gate, matching assignment-driven worker agents.
|
|
56
|
+
- Selecting the `ci-cd` module no longer assumes required checks already exist: exact-head company CI becomes authoritative only after checks run on that head; until then the merge gate runs the complete local gate once.
|
|
57
|
+
- The repo-maintenance preset assigns independently actionable setup work immediately; unspecified health fixes wait for the actual dependency-audit evidence, not a fixed repository PR count.
|
|
58
|
+
- Supported older Paperclip hosts that do not expose the newer Company Skill `/rename` route now keep the existing display name and continue refreshing skill content/metadata instead of aborting provisioning on a 404.
|
|
59
|
+
- Auto-assignment no longer models a dynamic repository PR cap as conjunctive blockers on every open PR; capacity waiters stay unassigned for the next assignment-driven capacity check.
|
|
60
|
+
- Retained Code Reviewer, Engineer, and Security Engineer role instructions now match the lean module contracts: exact-head CI avoids duplicate full gates, Engineers do not self-claim past WIP capacity or invent acceptance, and blocking security remediation stays on the originating issue and PR.
|
|
61
|
+
- QA evidence uses bounded pass/fail comments rather than executionPolicy verdicts; CEO fallback assignment follows the same non-conjunctive capacity wait as the primary skill; and inherited base-branch CI repair is explicitly isolated to one separately owned baseline-restore issue and PR.
|
|
62
|
+
|
|
63
|
+
## [0.5.3] - 2026-08-28
|
|
64
|
+
|
|
65
|
+
### Added
|
|
66
|
+
|
|
67
|
+
**Pending hires can be approved from the wizard's final step.**
|
|
68
|
+
|
|
69
|
+
Governed `/agent-hires` requests leave the agent created but *not invokable* until the board decides. Until now the wizard only logged the approval ids and told the operator to go find them in the board UI — so a freshly provisioned company sat unable to run its bootstrap heartbeat, and the bootstrap watchdog attach failed for the same reason. The Done step now lists the pending hires and offers an "Approve all hires" action.
|
|
70
|
+
|
|
71
|
+
This does not weaken governance: provisioning still **never** auto-approves, the company's approval policy keeps its meaning, and approving is an explicit click by the operator — who is the board member holding that authority anyway. The `approve-pending-hires` action re-reads the pending set server-side and intersects it with any requested ids, so it can only ever approve `hire_agent` approvals; a caller cannot use it to resolve a budget or strategy approval.
|
|
72
|
+
|
|
73
|
+
New API-client methods `listApprovals(companyId, { status })` and `approveApproval(approvalId, { decisionNote })`, plus the `list-pending-hires` and `approve-pending-hires` worker actions.
|
|
74
|
+
|
|
75
|
+
## [0.5.2] - 2026-08-28
|
|
76
|
+
|
|
77
|
+
### Added
|
|
78
|
+
|
|
79
|
+
**Shared project workspaces are now provisioned with a concurrency guard.**
|
|
80
|
+
|
|
81
|
+
Projects are provisioned with an explicit `executionWorkspacePolicy` carrying `sharedWorkspaceConcurrency: "serialize"`. Previously the wizard emitted no policy at all whenever isolated worktrees were not in play and let the server fall back to `shared_workspace` with `auto` concurrency — and `auto` only serializes runs on non-local environments. On a local driver that meant every agent run entered the *same* working tree at once and collided on git index and branch state. With `serialize`, a run defers while another holds the workspace; the deferral is bounded by holder liveness (60–120 s backoff), not by an attempt counter, so a deferred run resumes rather than starving.
|
|
82
|
+
|
|
83
|
+
The guard is applied on every resolution path (shared, isolated, and the deferred-isolation path for fresh local repos) and is carried into the project-creation step the CEO follows in BOOTSTRAP.md, so CEO-created projects do not silently fall back to `auto`. A project that pins its own `sharedWorkspaceConcurrency` keeps it.
|
|
84
|
+
|
|
85
|
+
Per-issue isolation is unaffected: Paperclip resolves an issue's `executionWorkspaceSettings.mode` before consulting the project policy, so the `backlog-health` guidance to give every top-level issue its own worktree still wins. `backlog-process.md` now explains the interplay — serialization protects git state, but only isolation buys parallelism.
|
|
86
|
+
|
|
87
|
+
### Fixed
|
|
88
|
+
|
|
89
|
+
- A project policy that set only some fields (for example just `sharedWorkspaceConcurrency`) was forwarded verbatim without `enabled`, which Paperclip's project-policy schema requires — the project creation would have failed with a 400. Every resolution path now defaults `enabled` to `true`.
|
|
90
|
+
- Corrected the deferred-isolation note in BOOTSTRAP.md, which claimed `executionWorkspacePolicy` was "intentionally omitted" for fresh local repos. A shared-workspace policy is now emitted; what is deferred is the isolated `git_worktree` mode.
|
|
91
|
+
|
|
92
|
+
## [0.5.1] - 2026-08-28
|
|
93
|
+
|
|
94
|
+
Compatibility review against Paperclip as of 2026-08-26. No API breakage was found: all 30 REST endpoints used by `src/api/client.js`, all 22 endpoints taught to agents in templates, every `paperclipRole` value, the declared manifest capabilities, and the agent-hire/issue/routine/project/skill payloads all still validate against the current server. The changes below correct staleness that accumulated since the last review.
|
|
95
|
+
|
|
96
|
+
### Changed
|
|
97
|
+
|
|
98
|
+
- **Codex model default is now `gpt-5.6-sol` instead of the bare `gpt-5.6` alias** (`DEFAULT_CEO_MODEL`, `roles/ceo/role.meta.json`, and the CEO-setup suggestion list). OpenAI publishes no model metadata for the bare slug, so the Codex CLI warns (`Model metadata for gpt-5.6 not found`) and falls back to generic context-window limits. Paperclip's `codex_local` adapter still rewrites the alias for legacy agents, but new companies are no longer provisioned onto it. This also matches the OpenAI company-generation path, which already used `gpt-5.6-sol`.
|
|
99
|
+
- Added `claude-opus-5` and `claude-sonnet-5` to the Claude model suggestions; both ship in Paperclip's `claude_local` adapter and the plugin already advertises Opus 5 for AI company generation.
|
|
100
|
+
- Added the `gemini_local`, `grok_local`, `kimi_local`, and `pi_local` adapters to the CEO-setup picker, which had drifted behind Paperclip's built-in `AGENT_ADAPTER_TYPES`.
|
|
101
|
+
- Bumped `@paperclipai/plugin-sdk` and `@paperclipai/shared` from `2026.722.0` to `2026.824.1`. The host-method surface diff is purely additive (9 new methods, none removed), and typecheck, build, and both test suites pass unchanged.
|
|
102
|
+
|
|
103
|
+
### Fixed
|
|
104
|
+
|
|
105
|
+
- **`stall-detection` no longer races Paperclip's own review-path recovery.** Paperclip now maintains the `in_review` review path as an invariant and queues an `issue_review_path_lost` wake to repair it. The skill records that as `WAITING-REVIEW-PATH-RECOVERY` and stands down, intervening only when the recovery is absent or has itself gone stale.
|
|
106
|
+
- **`stall-detection` no longer retries denied cross-issue repairs.** Paperclip contains cross-issue agent writes, so a `403 ... outside this actor's authorization boundary` is final. The skill now records the denial and escalates to the responsible human in the same pass instead of looping on a call that cannot succeed.
|
|
107
|
+
|
|
108
|
+
## [0.5.0] - 2026-08-10
|
|
109
|
+
|
|
110
|
+
### Added
|
|
111
|
+
|
|
112
|
+
- AI company generation can now use a governed OpenAI API key as an alternative to Anthropic. The OpenAI path uses the Responses API with `gpt-5.6-sol` and high reasoning effort.
|
|
113
|
+
- Added an `aiProvider` plugin setting (`anthropic` or `openai`) and an `openaiApiKey` governed Secret field. Existing configurations remain on Anthropic by default.
|
|
114
|
+
|
|
115
|
+
### Changed
|
|
116
|
+
|
|
117
|
+
- Anthropic generation now uses `claude-opus-5` with adaptive thinking, max effort, and a 65,536-token output ceiling. Text extraction ignores thinking blocks and returns only final text blocks.
|
|
118
|
+
- Both providers use the existing asynchronous start/poll generation path, keeping API keys and resolved Secret values inside the worker.
|
|
119
|
+
- Incomplete, truncated, empty, or refused provider responses fail the generation job instead of being accepted as a valid company configuration.
|
|
120
|
+
|
|
121
|
+
## [0.4.23] - 2026-08-10
|
|
122
|
+
|
|
123
|
+
### Fixed
|
|
124
|
+
|
|
125
|
+
- Anthropic configuration now accepts both direct/legacy string keys and Paperclip's object-shaped governed Secret bindings. Selecting a `local_encrypted` company Secret no longer fails the host's `instanceConfigSchema` validation before the binding can be authorized and persisted.
|
|
126
|
+
|
|
7
127
|
## [0.4.22] - 2026-08-10
|
|
8
128
|
|
|
9
129
|
### Fixed
|
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<a href="https://www.npmjs.com/package/@starlein/paperclip-plugin-company-wizard"><img src="https://img.shields.io/npm/v/@starlein/paperclip-plugin-company-wizard?color=cb3837&label=npm" alt="npm version"></a>
|
|
8
8
|
<a href="https://github.com/starlein/paperclip-plugin-company-wizard/actions/workflows/ci.yml"><img src="https://github.com/starlein/paperclip-plugin-company-wizard/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
9
9
|
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="License"></a>
|
|
10
|
-
<a href="https://nodejs.org"><img src="https://img.shields.io/badge/node-%3E%
|
|
10
|
+
<a href="https://nodejs.org"><img src="https://img.shields.io/badge/node-%3E%3D24.11-brightgreen" alt="Node.js"></a>
|
|
11
11
|
</p>
|
|
12
12
|
<hr>
|
|
13
13
|
<img src="https://raw.githubusercontent.com/starlein/paperclip-plugin-company-wizard/main/docs/GIF-Screencast-Paperclip-Plugin-Company-Wizard.gif" alt="Screencast Paperclip Plugin Company Wizard" height="240">
|
|
@@ -15,9 +15,13 @@
|
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
18
|
-
> **Fork:** This is a community-maintained fork of [yesterday-AI/paperclip-plugin-company-wizard](https://github.com/yesterday-AI/paperclip-plugin-company-wizard), updated for Paperclip plugin API v1 and the current published SDK with substantial bug fixes. End-to-end company setup is governed through current Paperclip workflows as of v0.
|
|
18
|
+
> **Fork:** This is a community-maintained fork of [yesterday-AI/paperclip-plugin-company-wizard](https://github.com/yesterday-AI/paperclip-plugin-company-wizard), updated for Paperclip plugin API v1 and the current published SDK with substantial bug fixes. End-to-end company setup is governed through current Paperclip workflows as of v0.5.0.
|
|
19
19
|
|
|
20
|
-
**
|
|
20
|
+
**Version 0.6.2:** re-reviewed against Paperclip master through 2026-09-06. Fixes routines that were silently rejected (invalid `concurrencyPolicy`) or rendered as `undefined` in the bootstrap issue, repoints instructions at Skills Store slugs and working-directory doc paths, and corrects the review-gate error/round-cap guidance. 0.6.1 consolidated PRs #44, #46 and #47 with run-scoped hire approvals and explicit bootstrap start. See [compatibility notes](docs/PAPERCLIP-COMPATIBILITY.md).
|
|
21
|
+
|
|
22
|
+
Requires Node **24.11+**, matching the current Paperclip SDK/shared runtime requirement.
|
|
23
|
+
|
|
24
|
+
**Update Company:** select an existing company to refresh its agent instructions, documents, skills, routines, and live project execution policies. Preview shows policy changes; existing workspace paths, explicit operator policies, and goal links are preserved. Partial failures never delete an existing company.
|
|
21
25
|
|
|
22
26
|
<details>
|
|
23
27
|
<summary><strong>What changed vs. upstream</strong></summary>
|
|
@@ -26,8 +30,8 @@
|
|
|
26
30
|
|
|
27
31
|
- Bootstrap metadata fields renamed to match the Paperclip API exactly: `parentId`, `assigneeAgentId`, `projectId`, `goalIds`
|
|
28
32
|
- CEO is provisioned with correct `capabilities` metadata so newly created CEOs are no longer saved with empty summaries
|
|
29
|
-
-
|
|
30
|
-
- `@paperclipai/plugin-sdk` and `@paperclipai/shared`
|
|
33
|
+
- No numeric manifest host floor: current Paperclip source initializes its plugin loader with `0.0.0`, unrelated to SDK release versions. Plugin API and declared-capability validation remain active; older hosts are not implied to be supported
|
|
34
|
+
- `@paperclipai/plugin-sdk` and `@paperclipai/shared` use tested stable `2026.831.1`, with peer floor `>=2026.831.1`; the host provides the externalized SDK at runtime
|
|
31
35
|
- `security-engineer` role now maps to the dedicated Paperclip `security` enum value (was `general`)
|
|
32
36
|
|
|
33
37
|
#### Bootstrap reliability
|
|
@@ -53,8 +57,8 @@
|
|
|
53
57
|
|
|
54
58
|
#### AI wizard
|
|
55
59
|
|
|
56
|
-
-
|
|
57
|
-
- All
|
|
60
|
+
- Choose Anthropic or OpenAI in plugin settings. Anthropic generation uses `claude-opus-5` with adaptive thinking, max effort, and a 65,536-token ceiling; OpenAI/Codex generation uses `gpt-5.6-sol` with high reasoning effort and the same output ceiling.
|
|
61
|
+
- All provider calls run as background jobs in the worker (start + poll), eliminating the 30 s RPC timeout that previously crashed config generation
|
|
58
62
|
- AI wizard now generates domain-specific initial issues from the project brief that lead the bootstrap backlog ahead of generic scaffolding issues
|
|
59
63
|
- Preset roles are defensively merged with AI-selected roles so preset roles are no longer silently dropped
|
|
60
64
|
|
|
@@ -67,7 +71,7 @@
|
|
|
67
71
|
|
|
68
72
|
- **Existing-company provisioning** — target an existing Paperclip company instead of creating a new one (`existingCompanyId`); partial-failure cleanup never deletes existing companies
|
|
69
73
|
- **Governed agent hiring** — submits agent creation through `/agent-hires`, preserves pending approval IDs, and does not auto-approve board-gated hires
|
|
70
|
-
-
|
|
74
|
+
- **Explicit approval and bootstrap controls** — select pending hires from this run, approve them with board authority, then explicitly start bootstrap; the wizard never disables the company's approval policy
|
|
71
75
|
- **Repository workspace setup** — choose between a fresh local Git repo or an existing external repository (GitHub, GitLab, etc.) via the manual wizard step or inline on the review/summary screen (available in both the manual and AI paths; the external option opens a repo-URL field)
|
|
72
76
|
- **Routine schedules** tightened to run every few hours around the clock (auto-assign every 2 h, stall-detection every 3 h, backlog grooming every 4 h) with `skip_if_active` concurrency policy
|
|
73
77
|
- **"Update templates" button** on the onboarding screen — deletes the cached templates dir and re-downloads from GitHub without restarting the plugin
|
|
@@ -85,7 +89,7 @@
|
|
|
85
89
|
## Why Company Wizard?
|
|
86
90
|
|
|
87
91
|
- 🗣️ **Describe it, don't configure it.** AI mode reads a plain-language brief and picks the right preset, modules, and roles for you. Manual mode is there for the steps you want to control yourself.
|
|
88
|
-
- 🧩 **Composable, not monolithic.** 15 curated presets layered from
|
|
92
|
+
- 🧩 **Composable, not monolithic.** 15 curated presets layered from 27 modules and 17 roles. Mix and match freely — modules add skills, tasks, and heartbeat logic to the roles that are present, and degrade gracefully when they're not.
|
|
89
93
|
- 🤝 **Works from day one with a single CEO.** Every capability has an owner chain. Add a specialist and responsibilities shift to them automatically; leave one out and the next-best person — ultimately the CEO — steps in. No setup ever leaves a gap.
|
|
90
94
|
- ✏️ **Review and edit before anything ships.** Preview every generated file, tweak a persona, workflow, or the repository setup inline on the review screen, then provision.
|
|
91
95
|
- 🚀 **Real end-to-end provisioning.** Not just scaffolded files — it creates the company, CEO, goals, projects, and backlog in Paperclip via the API. Target a brand-new or existing company, with a fresh local or existing external Git repo.
|
|
@@ -286,6 +290,7 @@ Modules are composable capabilities you layer on top of the base team. Each modu
|
|
|
286
290
|
| :----- | :----------- | :----------- |
|
|
287
291
|
| **`github-repo`** | Git workflow and commit conventions | Engineer initializes repo |
|
|
288
292
|
| **`pr-review`** | PR-based review workflow | Engineer configures PR workflow and branch protection (requires PRs, no approval gate) |
|
|
293
|
+
| **`lean-delivery`** | Optional single merge gate, risk-triggered evidence, and bounded WIP (requires `pr-review`) | — |
|
|
289
294
|
| **`backlog`** | Auto-generate issues from goals when backlog runs low | Primary owner creates initial backlog |
|
|
290
295
|
| **`auto-assign`** | Assign unassigned issues to idle agents | — |
|
|
291
296
|
| **`stall-detection`** | Detect stuck handovers, nudge or escalate | — |
|
|
@@ -346,11 +351,17 @@ Git workflow and commit conventions.
|
|
|
346
351
|
|
|
347
352
|
PR-based review workflow. Requires `github-repo`. Activates with `code-reviewer`, `product-owner`, `ui-designer`, `ux-researcher`, `qa`, or `devops`.
|
|
348
353
|
|
|
349
|
-
|
|
354
|
+
Standard review uses the issue's native `executionPolicy`: QA review when present, Security review only for security-relevant changes, Product Owner approval when present, then a non-author Code Reviewer **merge gate**. The merge owner verifies the exact reviewed head, merges the PR, and only then records approval to close the issue. Omit absent roles and the executor from every stage — Paperclip excludes the author and an author-only stage stalls. Without an eligible non-author Code Reviewer, set no stages and use `gh pr merge <N> --merge` (PR Self-Merge Flow).
|
|
350
355
|
|
|
351
356
|
- **Task:** Engineer configures PR workflow and branch protection (requires PRs, no approval gate)
|
|
352
357
|
- **Doc:** `docs/pr-conventions.md`
|
|
353
358
|
|
|
359
|
+
#### lean-delivery (optional)
|
|
360
|
+
|
|
361
|
+
Select **`lean-delivery`** in the setup wizard's **Modules** step; `pr-review` and `github-repo` are automatically included as dependencies. It is not selected by any built-in preset. Deselect it to keep standard review. In AI setup, explicitly request lean delivery.
|
|
362
|
+
|
|
363
|
+
With this module, the policy has exactly one default stage: the non-author Code Reviewer merge gate. Product acceptance is finalized before implementation; QA, Security, Product, UI/UX, and DevOps provide risk-triggered same-issue evidence instead of serial executionPolicy stages. The `docs/lean-delivery.md` contract uses advisory queue signals, not a fixed PR-count gate. In both modes, real dependencies, workspace safety, required CI, and explicit company capacity policies remain binding. Selecting this module never disables repository protections.
|
|
364
|
+
|
|
354
365
|
#### backlog
|
|
355
366
|
|
|
356
367
|
Owns the product backlog lifecycle — from goal decomposition to a steady pipeline of actionable issues.
|
|
@@ -594,17 +605,20 @@ Configure the plugin via **Settings → Plugins → Company Wizard** in the Pape
|
|
|
594
605
|
| Field | Required | Description |
|
|
595
606
|
| --- | --- | --- |
|
|
596
607
|
| `companiesDir` | No | Where assembled company workspaces are written. Defaults to `~/.paperclip/instances/default/companies`. Override for Docker setups. |
|
|
597
|
-
| `templatesPath` | No |
|
|
598
|
-
| `templatesRepoUrl` | No | GitHub tree URL
|
|
608
|
+
| `templatesPath` | No | Existing operator-managed template directory. Never overwritten by refresh. Default: bundled templates from this installed plugin release. |
|
|
609
|
+
| `templatesRepoUrl` | No | Custom GitHub tree URL opts into a source-specific remote cache. The official default uses bundled templates. Refresh explicitly before preview to update a custom source. |
|
|
599
610
|
| `paperclipUrl` | No | Paperclip instance URL. Defaults to `http://localhost:3100` or `PAPERCLIP_PUBLIC_URL` env var. |
|
|
600
611
|
| `paperclipEmail` | No | Board login email. Required for authenticated (non-`local_trusted`) instances. |
|
|
601
612
|
| `paperclipPassword` | No | Board login password. Stored as a secret ref. |
|
|
602
|
-
| `
|
|
603
|
-
| `
|
|
613
|
+
| `aiProvider` | No | AI wizard provider: `anthropic` (default) or `openai`. |
|
|
614
|
+
| `anthropicApiKey` | No | Anthropic API key for AI wizard mode. Stored as a governed secret ref. Required when `aiProvider` is `anthropic`. |
|
|
615
|
+
| `openaiApiKey` | No | OpenAI API key for GPT/Codex AI wizard mode. Stored as a governed secret ref. Required when `aiProvider` is `openai`. |
|
|
604
616
|
For enriched personas: there is no plugin setting. Template fragments are applied automatically when present.
|
|
605
617
|
|
|
606
618
|
For isolated worktrees: there is no plugin setting. The policy is controlled by Paperclip instance settings under **Settings → Instance → Experimental → enableIsolatedWorkspaces** and is consumed by the plugin during provisioning. External repository base refs are taken from project/worktree settings; leaving the ref blank lets Paperclip resolve its default instead of the wizard inventing `main`, `master`, or `origin/*`.
|
|
607
619
|
|
|
620
|
+
**Shared workspace guard:** new policies default to `sharedWorkspaceConcurrency: "serialize"`. Current Paperclip enforces this only for project-bound shared runs when `enableIsolatedWorkspaces` and the project policy are enabled. Explicit `auto`/`allow` and per-issue settings can override it; the wizard preserves these choices and does not turn on instance settings. A stored policy alone is not proof that a run is serialized.
|
|
621
|
+
|
|
608
622
|
<br>
|
|
609
623
|
|
|
610
624
|
## Development
|
|
@@ -818,7 +832,7 @@ Create `templates/presets/<name>/preset.meta.json`:
|
|
|
818
832
|
6. Creates scheduled routines with board authority and links them to the pre-created main project when needed
|
|
819
833
|
7. Creates a **Bootstrap task** assigned to the CEO
|
|
820
834
|
|
|
821
|
-
|
|
835
|
+
On the final step, review and approve selected pending hires, then click **Start bootstrap**. The CEO creates remaining goals/backlog work and links newly created projects where needed; existing project goal links remain untouched. Starting is separate from approval, and normal scheduled/assignment wakes remain governed by Paperclip. If provisioning fails after a **new** company is created, the partial company is automatically deleted — existing target companies are never deleted on error.
|
|
822
836
|
|
|
823
837
|
<br>
|
|
824
838
|
|
package/dist/manifest.js
CHANGED
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
var manifest = {
|
|
3
3
|
id: "starlein.paperclip-plugin-company-wizard",
|
|
4
4
|
apiVersion: 1,
|
|
5
|
-
version: "0.
|
|
5
|
+
version: "0.6.2",
|
|
6
6
|
displayName: "Company Wizard",
|
|
7
7
|
description: "AI-powered wizard to bootstrap agent companies from composable templates",
|
|
8
8
|
author: "Sascha Pietrowski <sp@speednetwork.de>",
|
|
9
9
|
categories: ["workspace", "ui"],
|
|
10
|
-
//
|
|
11
|
-
//
|
|
12
|
-
//
|
|
13
|
-
//
|
|
14
|
-
|
|
10
|
+
// No numeric host floor: the loader compares this against the host version
|
|
11
|
+
// `createApp` resolves (git describe → stamped build version → the server
|
|
12
|
+
// package version), so a packaged install reports its package version (0.3.1)
|
|
13
|
+
// and `compareSemver` would reject any CalVer floor on a current host.
|
|
14
|
+
// Keep API v1/capabilities explicit and validate feature availability at runtime.
|
|
15
15
|
capabilities: [
|
|
16
16
|
"companies.read",
|
|
17
17
|
"issues.create",
|
|
@@ -38,18 +38,33 @@ var manifest = {
|
|
|
38
38
|
},
|
|
39
39
|
templatesPath: {
|
|
40
40
|
type: "string",
|
|
41
|
-
description: "
|
|
41
|
+
description: "Optional operator-managed templates directory. Defaults to templates bundled with this plugin release. Local files are never overwritten by refresh."
|
|
42
42
|
},
|
|
43
43
|
templatesRepoUrl: {
|
|
44
44
|
type: "string",
|
|
45
45
|
default: "https://github.com/starlein/paperclip-plugin-company-wizard/tree/main/templates",
|
|
46
|
-
description: "GitHub tree URL
|
|
46
|
+
description: "Optional custom GitHub tree URL. The official default uses bundled release templates; a custom URL opts into a refreshable remote cache."
|
|
47
47
|
},
|
|
48
|
-
|
|
48
|
+
aiProvider: {
|
|
49
49
|
type: "string",
|
|
50
|
+
enum: ["anthropic", "openai"],
|
|
51
|
+
default: "anthropic",
|
|
52
|
+
description: "AI provider used for company generation. Anthropic uses Claude Opus 5 at max effort; OpenAI uses GPT-5.6 Sol at high reasoning effort."
|
|
53
|
+
},
|
|
54
|
+
anthropicApiKey: {
|
|
55
|
+
// Paperclip's secret picker submits an EnvSecretRefBinding object,
|
|
56
|
+
// while direct keys and older hosts still submit strings. Keep both
|
|
57
|
+
// representations schema-valid; the host validates governed bindings
|
|
58
|
+
// and the worker resolves them before calling Anthropic.
|
|
59
|
+
type: ["string", "object"],
|
|
50
60
|
format: "secret-ref",
|
|
51
61
|
description: "Anthropic API key for the AI wizard. Paste a key or select a saved Paperclip company secret; Paperclip stores pasted values as governed secret references."
|
|
52
62
|
},
|
|
63
|
+
openaiApiKey: {
|
|
64
|
+
type: ["string", "object"],
|
|
65
|
+
format: "secret-ref",
|
|
66
|
+
description: "OpenAI API key for GPT/Codex company generation. Paste a key or select a saved Paperclip company secret; required when AI Provider is openai."
|
|
67
|
+
},
|
|
53
68
|
paperclipUrl: {
|
|
54
69
|
type: "string",
|
|
55
70
|
description: "Paperclip instance URL. Defaults to http://localhost:3100 or the PAPERCLIP_PUBLIC_URL env var."
|
package/dist/manifest.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/manifest.ts"],
|
|
4
|
-
"sourcesContent": ["import type { PaperclipPluginManifestV1 } from '@paperclipai/plugin-sdk';\n\nconst manifest: PaperclipPluginManifestV1 = {\n id: 'starlein.paperclip-plugin-company-wizard',\n apiVersion: 1,\n version: '0.
|
|
5
|
-
"mappings": ";AAEA,IAAM,WAAsC;AAAA,EAC1C,IAAI;AAAA,EACJ,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,aAAa;AAAA,EACb,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,YAAY,CAAC,aAAa,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA
|
|
4
|
+
"sourcesContent": ["import type { PaperclipPluginManifestV1 } from '@paperclipai/plugin-sdk';\n\nconst manifest: PaperclipPluginManifestV1 = {\n id: 'starlein.paperclip-plugin-company-wizard',\n apiVersion: 1,\n version: '0.6.2',\n displayName: 'Company Wizard',\n description: 'AI-powered wizard to bootstrap agent companies from composable templates',\n author: 'Sascha Pietrowski <sp@speednetwork.de>',\n categories: ['workspace', 'ui'],\n // No numeric host floor: the loader compares this against the host version\n // `createApp` resolves (git describe \u2192 stamped build version \u2192 the server\n // package version), so a packaged install reports its package version (0.3.1)\n // and `compareSemver` would reject any CalVer floor on a current host.\n // Keep API v1/capabilities explicit and validate feature availability at runtime.\n capabilities: [\n 'companies.read',\n 'issues.create',\n 'issues.read',\n 'issues.update',\n 'goals.create',\n 'goals.read',\n 'agents.read',\n 'projects.read',\n 'skills.managed',\n 'plugin.state.read',\n 'plugin.state.write',\n 'secrets.read-ref',\n 'events.subscribe',\n 'ui.page.register',\n 'ui.sidebar.register',\n ],\n instanceConfigSchema: {\n type: 'object',\n properties: {\n companiesDir: {\n type: 'string',\n description:\n 'Directory where assembled company workspaces are written. Auto-detected: ~/instances/default/companies in Docker setups, ~/.paperclip/instances/default/companies otherwise. Rarely needs manual override.',\n },\n templatesPath: {\n type: 'string',\n description:\n 'Optional operator-managed templates directory. Defaults to templates bundled with this plugin release. Local files are never overwritten by refresh.',\n },\n templatesRepoUrl: {\n type: 'string',\n default: 'https://github.com/starlein/paperclip-plugin-company-wizard/tree/main/templates',\n description:\n 'Optional custom GitHub tree URL. The official default uses bundled release templates; a custom URL opts into a refreshable remote cache.',\n },\n aiProvider: {\n type: 'string',\n enum: ['anthropic', 'openai'],\n default: 'anthropic',\n description:\n 'AI provider used for company generation. Anthropic uses Claude Opus 5 at max effort; OpenAI uses GPT-5.6 Sol at high reasoning effort.',\n },\n anthropicApiKey: {\n // Paperclip's secret picker submits an EnvSecretRefBinding object,\n // while direct keys and older hosts still submit strings. Keep both\n // representations schema-valid; the host validates governed bindings\n // and the worker resolves them before calling Anthropic.\n type: ['string', 'object'],\n format: 'secret-ref',\n description:\n 'Anthropic API key for the AI wizard. Paste a key or select a saved Paperclip company secret; Paperclip stores pasted values as governed secret references.',\n },\n openaiApiKey: {\n type: ['string', 'object'],\n format: 'secret-ref',\n description:\n 'OpenAI API key for GPT/Codex company generation. Paste a key or select a saved Paperclip company secret; required when AI Provider is openai.',\n },\n paperclipUrl: {\n type: 'string',\n description:\n 'Paperclip instance URL. Defaults to http://localhost:3100 or the PAPERCLIP_PUBLIC_URL env var.',\n },\n paperclipEmail: {\n type: 'string',\n description: 'Board login email (for authenticated instances).',\n },\n paperclipPassword: {\n type: 'string',\n description: 'Board login password (for authenticated instances).',\n },\n },\n },\n entrypoints: {\n worker: './dist/worker.js',\n ui: './dist/ui',\n },\n ui: {\n slots: [\n {\n type: 'page',\n id: 'company-wizard',\n displayName: 'Company Wizard',\n exportName: 'WizardPage',\n routePath: 'company-creator',\n },\n {\n type: 'sidebar',\n id: 'company-wizard-link',\n displayName: 'Create Company',\n exportName: 'SidebarLink',\n },\n ],\n },\n};\n\nexport default manifest;\n"],
|
|
5
|
+
"mappings": ";AAEA,IAAM,WAAsC;AAAA,EAC1C,IAAI;AAAA,EACJ,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,aAAa;AAAA,EACb,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,YAAY,CAAC,aAAa,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAM9B,cAAc;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,sBAAsB;AAAA,IACpB,MAAM;AAAA,IACN,YAAY;AAAA,MACV,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,aACE;AAAA,MACJ;AAAA,MACA,eAAe;AAAA,QACb,MAAM;AAAA,QACN,aACE;AAAA,MACJ;AAAA,MACA,kBAAkB;AAAA,QAChB,MAAM;AAAA,QACN,SAAS;AAAA,QACT,aACE;AAAA,MACJ;AAAA,MACA,YAAY;AAAA,QACV,MAAM;AAAA,QACN,MAAM,CAAC,aAAa,QAAQ;AAAA,QAC5B,SAAS;AAAA,QACT,aACE;AAAA,MACJ;AAAA,MACA,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA,QAKf,MAAM,CAAC,UAAU,QAAQ;AAAA,QACzB,QAAQ;AAAA,QACR,aACE;AAAA,MACJ;AAAA,MACA,cAAc;AAAA,QACZ,MAAM,CAAC,UAAU,QAAQ;AAAA,QACzB,QAAQ;AAAA,QACR,aACE;AAAA,MACJ;AAAA,MACA,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,aACE;AAAA,MACJ;AAAA,MACA,gBAAgB;AAAA,QACd,MAAM;AAAA,QACN,aAAa;AAAA,MACf;AAAA,MACA,mBAAmB;AAAA,QACjB,MAAM;AAAA,QACN,aAAa;AAAA,MACf;AAAA,IACF;AAAA,EACF;AAAA,EACA,aAAa;AAAA,IACX,QAAQ;AAAA,IACR,IAAI;AAAA,EACN;AAAA,EACA,IAAI;AAAA,IACF,OAAO;AAAA,MACL;AAAA,QACE,MAAM;AAAA,QACN,IAAI;AAAA,QACJ,aAAa;AAAA,QACb,YAAY;AAAA,QACZ,WAAW;AAAA,MACb;AAAA,MACA;AAAA,QACE,MAAM;AAAA,QACN,IAAI;AAAA,QACJ,aAAa;AAAA,QACb,YAAY;AAAA,MACd;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAO,mBAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|