@bpmnkit/docspack 0.0.1

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.
Files changed (173) hide show
  1. package/.llms/chunks/cli.casen.aikit-skills.md +19 -0
  2. package/.llms/chunks/cli.casen.bpmn-generation-pipeline.md +32 -0
  3. package/.llms/chunks/cli.casen.connection-profiles.md +62 -0
  4. package/.llms/chunks/cli.casen.generate-bpmn-files.md +28 -0
  5. package/.llms/chunks/cli.casen.md +80 -0
  6. package/.llms/chunks/cli.casen.plugins.md +56 -0
  7. package/.llms/chunks/cli.casen.worker-commands.md +45 -0
  8. package/.llms/chunks/cli.connector.all-flags.md +29 -0
  9. package/.llms/chunks/cli.connector.browse-the-bundled-ootb-catalog.md +32 -0
  10. package/.llms/chunks/cli.connector.built-in-catalog.md +41 -0
  11. package/.llms/chunks/cli.connector.common-workflows.md +50 -0
  12. package/.llms/chunks/cli.connector.generate-from-the-openapi-catalog.md +30 -0
  13. package/.llms/chunks/cli.connector.md +20 -0
  14. package/.llms/chunks/cli.connector.programmatic-usage.md +7 -0
  15. package/.llms/chunks/cli.connector.what-gets-generated.md +20 -0
  16. package/.llms/chunks/cli.generate.definition-mode-ai-scripting-path.md +89 -0
  17. package/.llms/chunks/cli.generate.md +52 -0
  18. package/.llms/chunks/cli.generate.modify-existing-mode-input.md +59 -0
  19. package/.llms/chunks/cli.generate.typical-ai-workflow.md +18 -0
  20. package/.llms/chunks/cli.plugin-authoring.md +59 -0
  21. package/.llms/chunks/cli.plugin-authoring.plugin-naming-conventions.md +11 -0
  22. package/.llms/chunks/cli.plugin-authoring.test-locally.md +41 -0
  23. package/.llms/chunks/cli.plugin-authoring.the-bpmnkit-cli-sdk-sdk.md +82 -0
  24. package/.llms/chunks/cli.plugin-authoring.what-gets-generated.md +69 -0
  25. package/.llms/chunks/cli.plugin-authoring.writing-commands.md +84 -0
  26. package/.llms/chunks/cli.plugins.bpmnkit-casen-report.md +39 -0
  27. package/.llms/chunks/cli.plugins.bpmnkit-casen-worker-http.md +23 -0
  28. package/.llms/chunks/cli.plugins.md +25 -0
  29. package/.llms/chunks/cli.skills.deploy.md +24 -0
  30. package/.llms/chunks/cli.skills.implement.md +36 -0
  31. package/.llms/chunks/cli.skills.md +29 -0
  32. package/.llms/chunks/cli.skills.no-mcp-server-required.md +6 -0
  33. package/.llms/chunks/cli.skills.review.md +33 -0
  34. package/.llms/chunks/cli.skills.test.md +33 -0
  35. package/.llms/chunks/cli.view.folder-support.md +31 -0
  36. package/.llms/chunks/cli.view.md +70 -0
  37. package/.llms/chunks/cli.view.tabbed-navigation.md +28 -0
  38. package/.llms/chunks/getting-started.concepts.ai-compact-format.md +23 -0
  39. package/.llms/chunks/getting-started.concepts.auto-layout.md +24 -0
  40. package/.llms/chunks/getting-started.concepts.parsing-and-serializing.md +26 -0
  41. package/.llms/chunks/getting-started.concepts.the-fluent-builder.md +41 -0
  42. package/.llms/chunks/getting-started.concepts.zeebe-extensions.md +25 -0
  43. package/.llms/chunks/getting-started.installation.md +38 -0
  44. package/.llms/chunks/getting-started.installation.runtime-requirements.md +13 -0
  45. package/.llms/chunks/getting-started.installation.svg-canvas-viewer.md +41 -0
  46. package/.llms/chunks/getting-started.installation.worker-client.md +40 -0
  47. package/.llms/chunks/getting-started.quick-start.md +31 -0
  48. package/.llms/chunks/getting-started.quick-start.step-2-simulate-locally.md +28 -0
  49. package/.llms/chunks/getting-started.quick-start.step-3-deploy-to-camunda-8.md +33 -0
  50. package/.llms/chunks/getting-started.quick-start.what-s-next.md +14 -0
  51. package/.llms/chunks/guides.ai-agents.deploy-grade-validation.md +19 -0
  52. package/.llms/chunks/guides.ai-agents.how-it-s-modeled.md +11 -0
  53. package/.llms/chunks/guides.ai-agents.md +18 -0
  54. package/.llms/chunks/guides.ai-agents.see-also.md +7 -0
  55. package/.llms/chunks/guides.ai-agents.testing-without-a-real-llm-call.md +26 -0
  56. package/.llms/chunks/guides.ai-agents.the-aiagent-plan-step.md +62 -0
  57. package/.llms/chunks/guides.ai-implement.deploying.md +49 -0
  58. package/.llms/chunks/guides.ai-implement.extending-an-existing-process.md +10 -0
  59. package/.llms/chunks/guides.ai-implement.lightweight-alternative-casen-skills-install.md +28 -0
  60. package/.llms/chunks/guides.ai-implement.md +32 -0
  61. package/.llms/chunks/guides.ai-implement.the-claude-code-plugin.md +21 -0
  62. package/.llms/chunks/guides.ai.claude-api-example.md +41 -0
  63. package/.llms/chunks/guides.ai.mcp-server.md +20 -0
  64. package/.llms/chunks/guides.ai.md +32 -0
  65. package/.llms/chunks/guides.ai.minimal-empty-diagram.md +32 -0
  66. package/.llms/chunks/guides.ai.openai-function-calling.md +40 -0
  67. package/.llms/chunks/guides.building-processes.boundary-events.md +47 -0
  68. package/.llms/chunks/guides.building-processes.call-activities.md +47 -0
  69. package/.llms/chunks/guides.building-processes.events.md +57 -0
  70. package/.llms/chunks/guides.building-processes.multi-instance.md +20 -0
  71. package/.llms/chunks/guides.building-processes.service-tasks.md +39 -0
  72. package/.llms/chunks/guides.building-processes.sub-processes.md +40 -0
  73. package/.llms/chunks/guides.building-processes.task-defaults.md +18 -0
  74. package/.llms/chunks/guides.claude-code-plugin.ambient-hooks.md +24 -0
  75. package/.llms/chunks/guides.claude-code-plugin.configuration.md +126 -0
  76. package/.llms/chunks/guides.claude-code-plugin.md +47 -0
  77. package/.llms/chunks/guides.claude-code-plugin.reference-docs.md +61 -0
  78. package/.llms/chunks/guides.deployment.ci-cd-deploy-on-push.md +47 -0
  79. package/.llms/chunks/guides.deployment.deploying-a-process.md +52 -0
  80. package/.llms/chunks/guides.deployment.handling-jobs.md +50 -0
  81. package/.llms/chunks/guides.deployment.managing-incidents.md +33 -0
  82. package/.llms/chunks/guides.deployment.md +49 -0
  83. package/.llms/chunks/guides.gateways.branching-inside-sub-processes.md +27 -0
  84. package/.llms/chunks/guides.gateways.exclusive-gateway-xor.md +41 -0
  85. package/.llms/chunks/guides.gateways.inclusive-gateway-or.md +43 -0
  86. package/.llms/chunks/guides.gateways.nested-branching.md +27 -0
  87. package/.llms/chunks/guides.gateways.parallel-gateway-and.md +26 -0
  88. package/.llms/chunks/guides.patterns.how-matching-works.md +17 -0
  89. package/.llms/chunks/guides.patterns.md +26 -0
  90. package/.llms/chunks/guides.patterns.pattern-schema.md +38 -0
  91. package/.llms/chunks/guides.patterns.see-also.md +7 -0
  92. package/.llms/chunks/guides.patterns.using-patterns-from-the-cli.md +30 -0
  93. package/.llms/chunks/guides.patterns.what-a-pattern-contains.md +18 -0
  94. package/.llms/chunks/guides.simulation.dmn-decision-evaluation.md +51 -0
  95. package/.llms/chunks/guides.simulation.instance-state.md +29 -0
  96. package/.llms/chunks/guides.simulation.md +51 -0
  97. package/.llms/chunks/guides.simulation.message-correlation.md +30 -0
  98. package/.llms/chunks/guides.simulation.multiple-deployments.md +14 -0
  99. package/.llms/chunks/guides.workers-standalone.anatomy-of-a-worker.md +42 -0
  100. package/.llms/chunks/guides.workers-standalone.camunda-saas.md +43 -0
  101. package/.llms/chunks/guides.workers-standalone.environment-variables.md +14 -0
  102. package/.llms/chunks/guides.workers-standalone.md +35 -0
  103. package/.llms/chunks/guides.workers-standalone.running-workers.md +61 -0
  104. package/.llms/chunks/guides.workers-standalone.see-also.md +7 -0
  105. package/.llms/chunks/packages.api.incident-resolution.md +31 -0
  106. package/.llms/chunks/packages.api.observability-events.md +13 -0
  107. package/.llms/chunks/packages.api.overview.md +49 -0
  108. package/.llms/chunks/packages.api.process-operations.md +60 -0
  109. package/.llms/chunks/packages.api.resource-namespaces.md +20 -0
  110. package/.llms/chunks/packages.canvas.events.md +56 -0
  111. package/.llms/chunks/packages.canvas.options.md +24 -0
  112. package/.llms/chunks/packages.canvas.overview.md +35 -0
  113. package/.llms/chunks/packages.connector-gen.body-expansion.md +18 -0
  114. package/.llms/chunks/packages.connector-gen.catalog-reference.md +54 -0
  115. package/.llms/chunks/packages.connector-gen.catalogentry-type.md +21 -0
  116. package/.llms/chunks/packages.connector-gen.generating-from-the-catalog.md +44 -0
  117. package/.llms/chunks/packages.connector-gen.installation.md +42 -0
  118. package/.llms/chunks/packages.connector-gen.lower-level-api.md +31 -0
  119. package/.llms/chunks/packages.connector-gen.overview.md +16 -0
  120. package/.llms/chunks/packages.connector-gen.writeoptions.md +26 -0
  121. package/.llms/chunks/packages.core.dmn-support.md +36 -0
  122. package/.llms/chunks/packages.core.installation-bpmn.creatediagram-id.md +18 -0
  123. package/.llms/chunks/packages.core.installation-bpmn.createprocess-id-name.md +10 -0
  124. package/.llms/chunks/packages.core.installation-bpmn.export-definitions.md +10 -0
  125. package/.llms/chunks/packages.core.installation-bpmn.makeempty-processid-processname.md +11 -0
  126. package/.llms/chunks/packages.core.installation-bpmn.parse-xml.md +10 -0
  127. package/.llms/chunks/packages.core.installation-bpmn.sample_xml.md +7 -0
  128. package/.llms/chunks/packages.core.installation-compactify-definitions.md +13 -0
  129. package/.llms/chunks/packages.core.installation-expand-compact.md +13 -0
  130. package/.llms/chunks/packages.core.installation-layoutprocess-process.md +15 -0
  131. package/.llms/chunks/packages.core.installation-processbuilder-methods.md +29 -0
  132. package/.llms/chunks/packages.core.installation.md +11 -0
  133. package/.llms/chunks/packages.core.overview.md +15 -0
  134. package/.llms/chunks/packages.docspack.installation.md +45 -0
  135. package/.llms/chunks/packages.docspack.overview.md +23 -0
  136. package/.llms/chunks/packages.docspack.reading-it-yourself.md +34 -0
  137. package/.llms/chunks/packages.docspack.trust.md +13 -0
  138. package/.llms/chunks/packages.docspack.using-the-index-directly.md +52 -0
  139. package/.llms/chunks/packages.editor.basic-setup.md +41 -0
  140. package/.llms/chunks/packages.editor.full-editor-with-all-plugins.md +30 -0
  141. package/.llms/chunks/packages.editor.hud-options.md +41 -0
  142. package/.llms/chunks/packages.editor.overview.md +21 -0
  143. package/.llms/chunks/packages.engine.installation.md +77 -0
  144. package/.llms/chunks/packages.engine.overview.md +19 -0
  145. package/.llms/chunks/packages.engine.processinstance.md +17 -0
  146. package/.llms/chunks/packages.engine.variable-scoping.md +27 -0
  147. package/.llms/chunks/packages.worker-client.client.poll-jobtype-options.md +40 -0
  148. package/.llms/chunks/packages.worker-client.createworkerclient-options.md +32 -0
  149. package/.llms/chunks/packages.worker-client.job.complete-variables.md +29 -0
  150. package/.llms/chunks/packages.worker-client.md +33 -0
  151. package/.llms/chunks/packages.worker-client.oauth2-camunda-saas.md +26 -0
  152. package/.llms/chunks/packages.worker-client.see-also.md +7 -0
  153. package/.llms/manifest.json +2083 -0
  154. package/LICENSE +21 -0
  155. package/README.md +150 -0
  156. package/dist/build.d.ts +29 -0
  157. package/dist/build.js +89 -0
  158. package/dist/chunk.d.ts +41 -0
  159. package/dist/chunk.js +242 -0
  160. package/dist/cli.d.ts +9 -0
  161. package/dist/cli.js +160 -0
  162. package/dist/index.d.ts +13 -0
  163. package/dist/index.js +12 -0
  164. package/dist/load.d.ts +27 -0
  165. package/dist/load.js +144 -0
  166. package/dist/search.d.ts +53 -0
  167. package/dist/search.js +104 -0
  168. package/dist/text.d.ts +22 -0
  169. package/dist/text.js +204 -0
  170. package/dist/types.d.ts +48 -0
  171. package/dist/types.js +3 -0
  172. package/llms.txt +174 -0
  173. package/package.json +76 -0
@@ -0,0 +1,52 @@
1
+ # casen generate
2
+
3
+ `casen generate bpmn` produces BPMN 2.0 files without the interactive TUI. It has three operating
4
+ modes: template, definition (full JSON), and modify-existing (patch). Auto-layout is applied in all modes.
5
+
6
+
7
+ ## Commands
8
+
9
+ ```
10
+ casen generate
11
+ └── bpmn — generate or modify a BPMN file
12
+ ```
13
+
14
+
15
+ ## Template mode
16
+
17
+ Pick a built-in template by name. Use `--process-id` and `--name` to customise the identifiers.
18
+
19
+ ```sh
20
+ casen generate bpmn --template minimal --process-id order --name "Order Processing"
21
+ casen generate bpmn --template approval --process-id leave-request
22
+ casen generate bpmn --template parallel --process-id enrichment --name Enrichment
23
+ casen generate bpmn --template timer-start --process-id nightly-sync
24
+ ```
25
+
26
+ | Template | Pattern |
27
+ |---|---|
28
+ | `empty` | Start event only — bare skeleton |
29
+ | `minimal` | Start → service task → end |
30
+ | `user-task` | Start → user task → end |
31
+ | `call-activity` | Start → call activity → end |
32
+ | `business-rule` | Start → business rule task → end |
33
+ | `approval` | Start → user task → XOR gateway → approve/reject paths |
34
+ | `parallel` | Start → parallel fork → 2 service tasks → join → end |
35
+ | `inclusive` | Start → inclusive gateway → 2 conditional tasks → merge → end |
36
+ | `timer-start` | Timer start event → service task → end |
37
+ | `message-start` | Message start event → service task → end |
38
+ | `error-boundary` | Service task with error boundary → two end events |
39
+ | `subprocess` | Start → embedded sub-process → end |
40
+ | `event-subprocess` | Process with a non-interrupting error event sub-process |
41
+
42
+ ### Flags
43
+
44
+ | Flag | Short | Description | Default |
45
+ |---|---|---|---|
46
+ | `--template` | | Template name (see table above) | `minimal` |
47
+ | `--process-id` | `-i` | Process element ID | `process` |
48
+ | `--name` | `-n` | Process display name | — |
49
+ | `--output` | `-o` | Output file path (`-` for stdout) | `<process-id>.bpmn` |
50
+
51
+ ---
52
+ Source: https://docs.bpmnkit.com/cli/generate/
@@ -0,0 +1,59 @@
1
+ # casen generate — Modify-existing mode (`--input`)
2
+
3
+ Load an existing `.bpmn` file and patch it — add elements and flows, then re-apply auto-layout.
4
+ The default output overwrites the input file.
5
+
6
+ ### Inspect the current state
7
+
8
+ Use `--dump-compact` to print the file's CompactDiagram JSON. Use this to discover existing
9
+ element IDs before writing a patch.
10
+
11
+ ```sh
12
+ casen generate bpmn --input order.bpmn --dump-compact
13
+ ```
14
+
15
+ Output is a `CompactDiagram` JSON object — the same format accepted by `--definition`.
16
+
17
+ ### Add elements and flows
18
+
19
+ ```sh
20
+ # Add a rejection path to an existing gateway with id "gw"
21
+ casen generate bpmn --input order.bpmn \
22
+ --patch '{"elements":[
23
+ {"id":"notify", "type":"serviceTask","name":"Notify Customer","jobType":"notify-worker"},
24
+ {"id":"end-reject", "type":"endEvent", "name":"Rejected"}
25
+ ],"flows":[
26
+ {"id":"fn1","from":"gw", "to":"notify", "condition":"= not approved","name":"No"},
27
+ {"id":"fn2","from":"notify", "to":"end-reject"}
28
+ ]}'
29
+ ```
30
+
31
+ Patch mode appends to the **first process** in the file. Flows in the patch can reference existing
32
+ element IDs — they are not required to be new.
33
+
34
+ ### Pipe a patch from AI output
35
+
36
+ ```sh
37
+ # AI generates the patch JSON, pipe it in
38
+ echo '{"elements":[...],"flows":[...]}' | casen generate bpmn --input order.bpmn
39
+ ```
40
+
41
+ ### Normalize layout
42
+
43
+ Run `--input` without `--patch` to re-apply auto-layout without changing the process model:
44
+
45
+ ```sh
46
+ casen generate bpmn --input messy.bpmn --output clean.bpmn
47
+ ```
48
+
49
+ ### Flags for `--input` mode
50
+
51
+ | Flag | Description | Default |
52
+ |---|---|---|
53
+ | `--input` / `-f` | Existing `.bpmn` file to load | — |
54
+ | `--patch` | JSON patch: `{"elements":[...],"flows":[...]}` | — |
55
+ | `--dump-compact` | Print CompactDiagram JSON of `--input` and exit | — |
56
+ | `--output` / `-o` | Output path (`-` for stdout) | Overwrites `--input` file |
57
+
58
+ ---
59
+ Source: https://docs.bpmnkit.com/cli/generate/
@@ -0,0 +1,18 @@
1
+ # casen generate — Typical AI workflow
2
+
3
+ ```sh
4
+ # 1. Inspect the existing file — AI learns element IDs
5
+ casen generate bpmn --input order.bpmn --dump-compact
6
+
7
+ # 2. Check the schema if needed
8
+ casen generate bpmn --help-schema
9
+
10
+ # 3. AI generates patch JSON and pipes it in
11
+ echo '{"elements":[...],"flows":[...]}' | casen generate bpmn --input order.bpmn
12
+
13
+ # 4. Verify the result
14
+ casen view bpmn order.bpmn
15
+ ```
16
+
17
+ ---
18
+ Source: https://docs.bpmnkit.com/cli/generate/
@@ -0,0 +1,59 @@
1
+ # casen Plugin Authoring
2
+
3
+ casen plugins are ordinary npm packages that export a `CasenPlugin` object. Once installed, their
4
+ commands appear in the main TUI and in shell tab-completion alongside the built-in ones.
5
+
6
+
7
+ ## Scaffold a new plugin
8
+
9
+ The fastest way to start is with the official scaffolding tool:
10
+
11
+ ```sh
12
+ pnpm create @bpmnkit/casen-plugin
13
+ # or: npx @bpmnkit/create-casen-plugin
14
+ # or: bunx @bpmnkit/create-casen-plugin
15
+ ```
16
+
17
+ The tool runs interactively:
18
+
19
+ ```
20
+ @bpmnkit/create-casen-plugin — casen plugin scaffolding
21
+
22
+ Plugin name (npm package name): casen-deploy
23
+ Display name (Deploy):
24
+ Description (): Git-tag-aware deploys for casen
25
+ Author (): acme
26
+
27
+ Initialize git repo? (Y/n): Y
28
+
29
+ ✓ package.json
30
+ ✓ tsconfig.json
31
+ ✓ src/index.ts
32
+ ✓ .gitignore
33
+ ✓ git init
34
+
35
+ Done! Created casen-deploy at ./casen-deploy
36
+ ```
37
+
38
+ ### Non-interactive mode
39
+
40
+ Pass flags to skip all prompts — useful in CI or cookiecutter scripts:
41
+
42
+ ```sh
43
+ pnpm create @bpmnkit/casen-plugin \
44
+ --name casen-deploy \
45
+ --description "Git-tag-aware deploys for casen" \
46
+ --author acme \
47
+ --no-git
48
+ ```
49
+
50
+ | Flag | Description |
51
+ |---|---|
52
+ | `--name` / `-n` | npm package name (first positional arg also works) |
53
+ | `--display-name` | Human-readable name shown in `casen plugin list` |
54
+ | `--description` / `-d` | One-line description |
55
+ | `--author` / `-a` | Author name or npm username |
56
+ | `--no-git` | Skip `git init` |
57
+
58
+ ---
59
+ Source: https://docs.bpmnkit.com/cli/plugin-authoring/
@@ -0,0 +1,11 @@
1
+ # casen Plugin Authoring — Plugin naming conventions
2
+
3
+ | Convention | Reason |
4
+ |---|---|
5
+ | Name packages `casen-<feature>` | Predictable, easy to search |
6
+ | Set `id` to a reverse-domain string | Avoids conflicts across organisations |
7
+ | Keep each group name unique | casen merges all groups into one flat namespace |
8
+ | Prefix group name with your org for internal plugins | e.g. `acme-deploy` avoids clashing with a published `casen-deploy` |
9
+
10
+ ---
11
+ Source: https://docs.bpmnkit.com/cli/plugin-authoring/
@@ -0,0 +1,41 @@
1
+ # casen Plugin Authoring — Test locally
2
+
3
+ Build and install your plugin from the local directory:
4
+
5
+ ```sh
6
+ cd casen-deploy
7
+ pnpm install
8
+ pnpm build
9
+
10
+ casen plugin install ./casen-deploy
11
+ ```
12
+
13
+ Restart casen. Your commands appear under `casen deploy` (or whatever group name you chose).
14
+
15
+ To uninstall during development:
16
+
17
+ ```sh
18
+ casen plugin remove casen-deploy
19
+ ```
20
+
21
+
22
+ ## Publish to npm
23
+
24
+ When you're ready to share:
25
+
26
+ ```sh
27
+ cd casen-deploy
28
+ npm publish
29
+ ```
30
+
31
+ The `prepublishOnly` script in the generated `package.json` runs `tsc` automatically before
32
+ publishing, so `dist/` is always up to date.
33
+
34
+ Because `"casen-plugin"` is in `keywords`, your package is immediately discoverable via:
35
+
36
+ ```sh
37
+ casen plugin search deploy
38
+ ```
39
+
40
+ ---
41
+ Source: https://docs.bpmnkit.com/cli/plugin-authoring/
@@ -0,0 +1,82 @@
1
+ # casen Plugin Authoring — The `@bpmnkit/cli-sdk` SDK
2
+
3
+ Install the SDK as a devDependency in your plugin:
4
+
5
+ ```sh
6
+ pnpm add -D @bpmnkit/cli-sdk
7
+ ```
8
+
9
+ It exports all types you need — no runtime dependency on casen internals.
10
+
11
+ ### `CasenPlugin`
12
+
13
+ The root export. Default-export one instance of this from `dist/index.js`:
14
+
15
+ ```typescript
16
+ interface CasenPlugin {
17
+ id: string // reverse-domain ID, e.g. "com.acme.casen-deploy"
18
+ name: string // shown in "casen plugin list"
19
+ version: string
20
+ groups: CommandGroup[]
21
+ }
22
+ ```
23
+
24
+ ### `CommandGroup`
25
+
26
+ Maps to one top-level token in the CLI (`casen <group>`). The name must be unique across all
27
+ installed plugins and the casen core commands:
28
+
29
+ ```typescript
30
+ interface CommandGroup {
31
+ name: string // kebab-case, e.g. "deploy"
32
+ aliases?: string[]
33
+ description: string
34
+ commands: Command[]
35
+ }
36
+ ```
37
+
38
+ ### `Command`
39
+
40
+ A single executable action within a group (`casen <group> <command>`):
41
+
42
+ ```typescript
43
+ interface Command {
44
+ name: string
45
+ aliases?: string[]
46
+ description: string
47
+ args?: ArgSpec[]
48
+ flags?: FlagSpec[]
49
+ examples?: Example[]
50
+ run(ctx: RunContext): Promise<void>
51
+ }
52
+ ```
53
+
54
+ ### `RunContext`
55
+
56
+ Passed to every `run()` function. Use it to read arguments, write output, and access
57
+ authenticated Camunda clients:
58
+
59
+ ```typescript
60
+ interface RunContext {
61
+ positional: string[] // positional args after <group> <command>
62
+ flags: ParsedFlags // { flagName: value }
63
+ output: OutputWriter // table / json / yaml renderer
64
+ getClient(): Promise<unknown> // Camunda C8 REST client
65
+ getAdminClient(): Promise<unknown> // Camunda Admin API client
66
+ }
67
+ ```
68
+
69
+ ### `OutputWriter`
70
+
71
+ Use `ctx.output` for all output so the `--output` flag (table / json / yaml) is respected:
72
+
73
+ ```typescript
74
+ ctx.output.ok("Done.") // ✓ Done.
75
+ ctx.output.info("Deploying…") // → Deploying…
76
+ ctx.output.printList({ items }, columns) // table of rows
77
+ ctx.output.printItem(singleObject) // key-value pairs
78
+ ctx.output.print(anything) // raw, format-aware
79
+ ```
80
+
81
+ ---
82
+ Source: https://docs.bpmnkit.com/cli/plugin-authoring/
@@ -0,0 +1,69 @@
1
+ # casen Plugin Authoring — What gets generated
2
+
3
+ ```
4
+ casen-deploy/
5
+ ├── package.json # "casen-plugin" keyword pre-set; no manual step needed
6
+ ├── tsconfig.json # standalone, no monorepo dependency
7
+ ├── .gitignore
8
+ └── src/
9
+ └── index.ts # CasenPlugin default export with an example command
10
+ ```
11
+
12
+ ### Generated `package.json`
13
+
14
+ ```json
15
+ {
16
+ "name": "casen-deploy",
17
+ "version": "0.1.0",
18
+ "description": "Git-tag-aware deploys for casen",
19
+ "type": "module",
20
+ "main": "dist/index.js",
21
+ "keywords": ["casen-plugin"],
22
+ "scripts": {
23
+ "build": "tsc",
24
+ "build:watch": "tsc --watch",
25
+ "prepublishOnly": "tsc"
26
+ },
27
+ "devDependencies": {
28
+ "@bpmnkit/cli-sdk": "latest",
29
+ "typescript": "latest"
30
+ }
31
+ }
32
+ ```
33
+
34
+ The `"casen-plugin"` keyword is injected automatically — it is how `casen plugin search` discovers
35
+ your package on npm once published.
36
+
37
+ ### Generated `src/index.ts`
38
+
39
+ ```typescript
40
+ import type { CasenPlugin } from "@bpmnkit/cli-sdk"
41
+
42
+ const plugin: CasenPlugin = {
43
+ id: "com.acme.casen-deploy",
44
+ name: "Deploy",
45
+ version: "0.1.0",
46
+ groups: [
47
+ {
48
+ name: "deploy",
49
+ description: "Deploy commands",
50
+ commands: [
51
+ {
52
+ name: "hello",
53
+ description: "Example command — replace with your own",
54
+ async run(ctx) {
55
+ ctx.output.ok("Hello from Deploy!")
56
+ },
57
+ },
58
+ ],
59
+ },
60
+ ],
61
+ }
62
+
63
+ export default plugin
64
+ ```
65
+
66
+ Replace the example command with your own logic. Add as many command groups and commands as needed.
67
+
68
+ ---
69
+ Source: https://docs.bpmnkit.com/cli/plugin-authoring/
@@ -0,0 +1,84 @@
1
+ # casen Plugin Authoring — Writing commands
2
+
3
+ ### Positional arguments
4
+
5
+ ```typescript
6
+ {
7
+ name: "release",
8
+ description: "Tag and deploy the current process version",
9
+ args: [
10
+ { name: "process-id", description: "BPMN process ID", required: true },
11
+ { name: "tag", description: "Release tag, e.g. v1.2.0", required: true },
12
+ ],
13
+ async run(ctx) {
14
+ const processId = ctx.positional[0]
15
+ const tag = ctx.positional[1]
16
+ if (!processId || !tag) throw new Error("Missing required arguments")
17
+ // ...
18
+ },
19
+ }
20
+ ```
21
+
22
+ ### Flags
23
+
24
+ ```typescript
25
+ {
26
+ name: "release",
27
+ flags: [
28
+ {
29
+ name: "dry-run",
30
+ short: "n",
31
+ description: "Show what would happen without making changes",
32
+ type: "boolean",
33
+ default: false,
34
+ },
35
+ {
36
+ name: "env",
37
+ description: "Target environment",
38
+ type: "string",
39
+ default: "production",
40
+ enum: ["staging", "production"],
41
+ },
42
+ ],
43
+ async run(ctx) {
44
+ const dryRun = ctx.flags["dry-run"] === true
45
+ const env = ctx.flags.env as string
46
+ // ...
47
+ },
48
+ }
49
+ ```
50
+
51
+ ### Calling the Camunda API
52
+
53
+ Cast `getClient()` to `CamundaClient` from `@bpmnkit/api` if you need full type coverage,
54
+ or access it generically via the unknown type:
55
+
56
+ ```typescript
57
+ import type { CamundaClient } from "@bpmnkit/api"
58
+
59
+ async run(ctx) {
60
+ const client = await ctx.getClient() as CamundaClient
61
+ const { items } = await client.processDefinition.searchProcessDefinitions({})
62
+ ctx.output.printList({ items }, [
63
+ { key: "bpmnProcessId", header: "PROCESS ID" },
64
+ { key: "name", header: "NAME" },
65
+ { key: "version", header: "VER" },
66
+ ])
67
+ },
68
+ ```
69
+
70
+ ### Throwing errors
71
+
72
+ Throw a plain `Error` for user-facing errors. casen catches it, prints `error: <message>` to
73
+ stderr, and exits with code 1:
74
+
75
+ ```typescript
76
+ async run(ctx) {
77
+ const name = ctx.positional[0]
78
+ if (!name) throw new Error("Missing required argument: <name>")
79
+ // ...
80
+ }
81
+ ```
82
+
83
+ ---
84
+ Source: https://docs.bpmnkit.com/cli/plugin-authoring/
@@ -0,0 +1,39 @@
1
+ # casen Plugins — `@bpmnkit/casen-report`
2
+
3
+ Render HTML reports from Camunda 8 incident and SLA data
4
+
5
+ ### Installation
6
+
7
+ ```sh
8
+ casen plugin install @bpmnkit/casen-report
9
+ ```
10
+
11
+ | Command | Description |
12
+ |---------|-------------|
13
+ | `casen report incidents` | Generate an HTML report of current incidents grouped by process |
14
+ | `casen report sla` | Generate an SLA compliance report for process instances |
15
+
16
+ ---
17
+
18
+
19
+ ## `@bpmnkit/casen-worker-ai`
20
+
21
+ AI task worker plugin for casen — classify, summarize, extract, and decide using Claude
22
+
23
+ ### Installation
24
+
25
+ ```sh
26
+ casen plugin install @bpmnkit/casen-worker-ai
27
+ ```
28
+
29
+ | Command | Description |
30
+ |---------|-------------|
31
+ | `casen ai-worker classify` | Classify text into one of the given categories |
32
+ | `casen ai-worker summarize` | Summarize text to a given length and style |
33
+ | `casen ai-worker extract` | Extract structured fields from unstructured text |
34
+ | `casen ai-worker decide` | Make a boolean decision based on a question, context, and optional policy |
35
+
36
+ ---
37
+
38
+ ---
39
+ Source: https://docs.bpmnkit.com/cli/plugins/
@@ -0,0 +1,23 @@
1
+ # casen Plugins — `@bpmnkit/casen-worker-http`
2
+
3
+ Example casen worker plugin — processes HTTP connector jobs using the JSONPlaceholder API
4
+
5
+ ### Installation
6
+
7
+ ```sh
8
+ casen plugin install @bpmnkit/casen-worker-http
9
+ ```
10
+
11
+ | Command | Description |
12
+ |---------|-------------|
13
+ | `casen http-worker start` | Subscribe to HTTP connector jobs and complete them with live API data |
14
+
15
+ ---
16
+
17
+
18
+ ## Authoring Plugins
19
+
20
+ See the [Plugin Authoring](/cli/plugin-authoring/) guide to build and publish your own `casen` plugin.
21
+
22
+ ---
23
+ Source: https://docs.bpmnkit.com/cli/plugins/
@@ -0,0 +1,25 @@
1
+ # casen Plugins
2
+
3
+ :::note[Auto-generated]
4
+ This page is generated from `plugins-cli/*/package.json` during the docs build. Do not edit manually.
5
+ :::
6
+
7
+ Official plugins extend `casen` with domain-specific command groups. Install them with:
8
+
9
+ ```sh
10
+ casen plugin install <name>
11
+ ```
12
+
13
+
14
+ ## Available Plugins
15
+
16
+ | Plugin | Description |
17
+ |--------|-------------|
18
+ | [`@bpmnkit/casen-report`](#-bpmnkit-casen-report) | Render HTML reports from Camunda 8 incident and SLA data |
19
+ | [`@bpmnkit/casen-worker-ai`](#-bpmnkit-casen-worker-ai) | AI task worker plugin for casen — classify, summarize, extract, and decide using Claude |
20
+ | [`@bpmnkit/casen-worker-http`](#-bpmnkit-casen-worker-http) | Example casen worker plugin — processes HTTP connector jobs using the JSONPlaceholder API |
21
+
22
+ ---
23
+
24
+ ---
25
+ Source: https://docs.bpmnkit.com/cli/plugins/
@@ -0,0 +1,24 @@
1
+ # AIKit Skills — `/deploy`
2
+
3
+ Gate a BPMN process on deploy-readiness, then deploy it to local Reebe or Camunda 8.
4
+
5
+ ```
6
+ /deploy invoice-approval.bpmn
7
+ ```
8
+
9
+ **What it does:**
10
+
11
+ 1. Runs `casen lint lint <file> --profile deploy` — stops if it reports any errors
12
+ 2. Deploys via `casen deploy deploy <file>` (local) or `casen deploy deploy <file> --target camunda8`
13
+ 3. Verifies with `casen process-definition list`
14
+ 4. Reminds you to start any scaffolded workers and provision any `{{secrets.NAME}}` the process references
15
+
16
+ **Targets:**
17
+
18
+ - **Local Reebe** — deploys via `ZEEBE_ADDRESS` (default `http://localhost:26500`). Start Reebe first: `casen reebe start --port 26500`
19
+ - **Camunda 8** — deploys using the active `casen` profile. Set one up: `casen profile create`
20
+
21
+ ---
22
+
23
+ ---
24
+ Source: https://docs.bpmnkit.com/cli/skills/
@@ -0,0 +1,36 @@
1
+ # AIKit Skills — `/implement`
2
+
3
+ End-to-end process implementation from a natural language description.
4
+
5
+ ```
6
+ /implement an invoice approval process for accounts payable
7
+ /implement employee onboarding with Okta provisioning and Jira ticket creation
8
+ /implement a supplier contract review workflow with DocuSign e-signature
9
+ ```
10
+
11
+ **What it does:**
12
+
13
+ 1. Resolves external interactions via `casen connector search`/`show`
14
+ 2. Writes a `ProcessPlan` JSON file
15
+ 3. Compiles it with `casen synth`, fixing any reported problems in the plan and retrying
16
+ 4. Adds test scenarios and runs `casen test`
17
+ 5. Scaffolds a worker stub for every job type with no existing worker or connector
18
+ 6. Presents a summary and asks where to deploy
19
+
20
+ **Output:**
21
+ ```
22
+ BPMN file: invoice-approval.bpmn
23
+
24
+ Connectors used: none
25
+ Workers: reused none / scaffolded workers/validate-invoice/, workers/trigger-payment/
26
+ Tests: 3/3 passed
27
+
28
+ Deploy to local Reebe, deploy to Camunda 8, or skip?
29
+ ```
30
+
31
+ See [Building Processes with AI](/guides/ai-implement/) for a full walkthrough.
32
+
33
+ ---
34
+
35
+ ---
36
+ Source: https://docs.bpmnkit.com/cli/skills/
@@ -0,0 +1,29 @@
1
+ # AIKit Skills
2
+
3
+ `casen` ships four lightweight Claude Code slash commands that automate the process
4
+ development lifecycle — from natural language description to deployed, running process.
5
+ They drive `casen` directly (no MCP server, no proxy daemon).
6
+
7
+ For the full skill set — `/bpmnkit:implement`, `:extend`, `:agent`, `:connect`, plus generated
8
+ reference docs the skills read before authoring a plan — install the
9
+ [Claude Code plugin](/guides/ai-implement/#the-claude-code-plugin) instead.
10
+
11
+
12
+ ## Installation
13
+
14
+ ```sh
15
+ casen skills install
16
+ ```
17
+
18
+ Copies the skill files into `.claude/commands/` in the current project directory.
19
+ Once installed, they appear in Claude Code's slash command picker.
20
+
21
+ ```sh
22
+ # Reinstall or overwrite existing skills
23
+ casen skills install --force
24
+ ```
25
+
26
+ ---
27
+
28
+ ---
29
+ Source: https://docs.bpmnkit.com/cli/skills/
@@ -0,0 +1,6 @@
1
+ # AIKit Skills — No MCP server required
2
+
3
+ These skills are plain Bash + Read/Write — they call `casen` directly and never depend on an MCP server or a running proxy. The `@bpmnkit/proxy` MCP server (`bpmn-aikit`) still exists separately, for Claude Desktop/Cursor or other MCP-only hosts — it's unrelated to these slash commands.
4
+
5
+ ---
6
+ Source: https://docs.bpmnkit.com/cli/skills/