@promptbook/components 0.112.0-35 → 0.112.0-38

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 (128) hide show
  1. package/README.md +119 -18
  2. package/esm/index.es.js +357 -69
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/src/_packages/components.index.d.ts +2 -0
  5. package/esm/src/_packages/types.index.d.ts +48 -46
  6. package/esm/src/book-components/Chat/Chat/ChatActionsBar.d.ts +7 -0
  7. package/esm/src/book-components/Chat/Chat/ChatActionsBar.test.d.ts +2 -0
  8. package/esm/src/book-components/Chat/Chat/ChatInputArea.d.ts +4 -0
  9. package/esm/src/book-components/Chat/Chat/ChatMessageItem.d.ts +8 -0
  10. package/esm/src/book-components/Chat/Chat/ChatMessageList.d.ts +2 -0
  11. package/esm/src/book-components/Chat/Chat/ChatProps.d.ts +50 -1
  12. package/esm/src/book-components/Chat/Chat/ChatReplyPreview.d.ts +19 -0
  13. package/esm/src/book-components/Chat/Chat/createProgressCardChecklistMarkdown.d.ts +2 -2
  14. package/esm/src/book-components/Chat/MockedChat/MockedChat.d.ts +1 -1
  15. package/esm/src/book-components/Chat/types/ChatMessage.d.ts +35 -0
  16. package/esm/src/book-components/Chat/utils/resolveChatMessageReplyPreviewText.d.ts +25 -0
  17. package/esm/src/book-components/Chat/utils/resolveChatMessageReplySenderLabel.d.ts +12 -0
  18. package/esm/src/cli/cli-commands/coder/agentCodingFile.d.ts +14 -0
  19. package/esm/src/cli/cli-commands/coder/agentsFile.d.ts +12 -0
  20. package/esm/src/cli/cli-commands/coder/appendBlock.d.ts +6 -0
  21. package/esm/src/cli/cli-commands/coder/boilerplateTemplates.d.ts +137 -0
  22. package/esm/src/cli/cli-commands/coder/boilerplateTemplates.test.d.ts +1 -0
  23. package/esm/src/cli/cli-commands/coder/ensureCoderEnvFile.d.ts +15 -0
  24. package/esm/src/cli/cli-commands/coder/ensureCoderGitignoreFile.d.ts +7 -0
  25. package/esm/src/cli/cli-commands/coder/ensureCoderMarkdownFile.d.ts +7 -0
  26. package/esm/src/cli/cli-commands/coder/ensureCoderPackageJsonFile.d.ts +7 -0
  27. package/esm/src/cli/cli-commands/coder/ensureCoderVscodeSettingsFile.d.ts +7 -0
  28. package/esm/src/cli/cli-commands/coder/ensureDirectory.d.ts +7 -0
  29. package/esm/src/cli/cli-commands/coder/find-refactor-candidates.d.ts +1 -1
  30. package/esm/src/cli/cli-commands/coder/find-refactor-candidates.test.d.ts +1 -0
  31. package/esm/src/cli/cli-commands/coder/formatDisplayPath.d.ts +6 -0
  32. package/esm/src/cli/cli-commands/coder/generate-boilerplates.d.ts +10 -0
  33. package/esm/src/cli/cli-commands/coder/getDefaultCoderPackageJsonScripts.d.ts +6 -0
  34. package/esm/src/cli/cli-commands/coder/getDefaultCoderVscodeSettings.d.ts +6 -0
  35. package/esm/src/cli/cli-commands/coder/init.d.ts +3 -0
  36. package/esm/src/cli/cli-commands/coder/initializeCoderProjectConfiguration.d.ts +25 -0
  37. package/esm/src/cli/cli-commands/coder/mergeStringRecordJsonFile.d.ts +18 -0
  38. package/esm/src/cli/cli-commands/coder/printInitializationSummary.d.ts +7 -0
  39. package/esm/src/cli/cli-commands/coder/readTextFileIfExists.d.ts +6 -0
  40. package/esm/src/types/string_agent_url.d.ts +7 -0
  41. package/esm/src/types/string_agent_url_private.d.ts +9 -0
  42. package/esm/src/types/string_base64.d.ts +13 -0
  43. package/esm/src/types/string_base64_private.d.ts +2 -2
  44. package/esm/src/types/string_base_url.d.ts +7 -0
  45. package/esm/src/types/string_base_url_private.d.ts +9 -0
  46. package/esm/src/types/string_email.d.ts +13 -0
  47. package/esm/src/types/string_email_private.d.ts +2 -2
  48. package/esm/src/types/string_host.d.ts +42 -0
  49. package/esm/src/types/string_host_private.d.ts +7 -7
  50. package/esm/src/types/string_href.d.ts +19 -0
  51. package/esm/src/types/string_href_private.d.ts +24 -0
  52. package/esm/src/types/string_mime_type.d.ts +15 -0
  53. package/esm/src/types/string_mime_type_private.d.ts +2 -2
  54. package/esm/src/types/string_pipeline_root_url.d.ts +7 -0
  55. package/esm/src/types/string_pipeline_root_url_private.d.ts +9 -0
  56. package/esm/src/types/string_pipeline_url.d.ts +13 -0
  57. package/esm/src/types/string_pipeline_url_private.d.ts +17 -0
  58. package/esm/src/types/string_promptbook_server_url.d.ts +7 -0
  59. package/esm/src/types/string_promptbook_server_url_private.d.ts +9 -0
  60. package/esm/src/types/string_url.d.ts +14 -141
  61. package/esm/src/types/string_url_image.d.ts +7 -0
  62. package/esm/src/types/string_url_image_private.d.ts +9 -0
  63. package/esm/src/types/string_url_private.d.ts +0 -80
  64. package/esm/src/version.d.ts +1 -1
  65. package/package.json +1 -1
  66. package/umd/index.umd.js +356 -68
  67. package/umd/index.umd.js.map +1 -1
  68. package/umd/src/_packages/components.index.d.ts +2 -0
  69. package/umd/src/_packages/types.index.d.ts +48 -46
  70. package/umd/src/book-components/Chat/Chat/ChatActionsBar.d.ts +7 -0
  71. package/umd/src/book-components/Chat/Chat/ChatActionsBar.test.d.ts +2 -0
  72. package/umd/src/book-components/Chat/Chat/ChatInputArea.d.ts +4 -0
  73. package/umd/src/book-components/Chat/Chat/ChatMessageItem.d.ts +8 -0
  74. package/umd/src/book-components/Chat/Chat/ChatMessageList.d.ts +2 -0
  75. package/umd/src/book-components/Chat/Chat/ChatProps.d.ts +50 -1
  76. package/umd/src/book-components/Chat/Chat/ChatReplyPreview.d.ts +19 -0
  77. package/umd/src/book-components/Chat/Chat/createProgressCardChecklistMarkdown.d.ts +2 -2
  78. package/umd/src/book-components/Chat/MockedChat/MockedChat.d.ts +1 -1
  79. package/umd/src/book-components/Chat/types/ChatMessage.d.ts +35 -0
  80. package/umd/src/book-components/Chat/utils/resolveChatMessageReplyPreviewText.d.ts +25 -0
  81. package/umd/src/book-components/Chat/utils/resolveChatMessageReplySenderLabel.d.ts +12 -0
  82. package/umd/src/cli/cli-commands/coder/agentCodingFile.d.ts +14 -0
  83. package/umd/src/cli/cli-commands/coder/agentsFile.d.ts +12 -0
  84. package/umd/src/cli/cli-commands/coder/appendBlock.d.ts +6 -0
  85. package/umd/src/cli/cli-commands/coder/boilerplateTemplates.d.ts +137 -0
  86. package/umd/src/cli/cli-commands/coder/boilerplateTemplates.test.d.ts +1 -0
  87. package/umd/src/cli/cli-commands/coder/ensureCoderEnvFile.d.ts +15 -0
  88. package/umd/src/cli/cli-commands/coder/ensureCoderGitignoreFile.d.ts +7 -0
  89. package/umd/src/cli/cli-commands/coder/ensureCoderMarkdownFile.d.ts +7 -0
  90. package/umd/src/cli/cli-commands/coder/ensureCoderPackageJsonFile.d.ts +7 -0
  91. package/umd/src/cli/cli-commands/coder/ensureCoderVscodeSettingsFile.d.ts +7 -0
  92. package/umd/src/cli/cli-commands/coder/ensureDirectory.d.ts +7 -0
  93. package/umd/src/cli/cli-commands/coder/find-refactor-candidates.d.ts +1 -1
  94. package/umd/src/cli/cli-commands/coder/find-refactor-candidates.test.d.ts +1 -0
  95. package/umd/src/cli/cli-commands/coder/formatDisplayPath.d.ts +6 -0
  96. package/umd/src/cli/cli-commands/coder/generate-boilerplates.d.ts +10 -0
  97. package/umd/src/cli/cli-commands/coder/getDefaultCoderPackageJsonScripts.d.ts +6 -0
  98. package/umd/src/cli/cli-commands/coder/getDefaultCoderVscodeSettings.d.ts +6 -0
  99. package/umd/src/cli/cli-commands/coder/init.d.ts +3 -0
  100. package/umd/src/cli/cli-commands/coder/initializeCoderProjectConfiguration.d.ts +25 -0
  101. package/umd/src/cli/cli-commands/coder/mergeStringRecordJsonFile.d.ts +18 -0
  102. package/umd/src/cli/cli-commands/coder/printInitializationSummary.d.ts +7 -0
  103. package/umd/src/cli/cli-commands/coder/readTextFileIfExists.d.ts +6 -0
  104. package/umd/src/types/string_agent_url.d.ts +7 -0
  105. package/umd/src/types/string_agent_url_private.d.ts +9 -0
  106. package/umd/src/types/string_base64.d.ts +13 -0
  107. package/umd/src/types/string_base64_private.d.ts +2 -2
  108. package/umd/src/types/string_base_url.d.ts +7 -0
  109. package/umd/src/types/string_base_url_private.d.ts +9 -0
  110. package/umd/src/types/string_email.d.ts +13 -0
  111. package/umd/src/types/string_email_private.d.ts +2 -2
  112. package/umd/src/types/string_host.d.ts +42 -0
  113. package/umd/src/types/string_host_private.d.ts +7 -7
  114. package/umd/src/types/string_href.d.ts +19 -0
  115. package/umd/src/types/string_href_private.d.ts +24 -0
  116. package/umd/src/types/string_mime_type.d.ts +15 -0
  117. package/umd/src/types/string_mime_type_private.d.ts +2 -2
  118. package/umd/src/types/string_pipeline_root_url.d.ts +7 -0
  119. package/umd/src/types/string_pipeline_root_url_private.d.ts +9 -0
  120. package/umd/src/types/string_pipeline_url.d.ts +13 -0
  121. package/umd/src/types/string_pipeline_url_private.d.ts +17 -0
  122. package/umd/src/types/string_promptbook_server_url.d.ts +7 -0
  123. package/umd/src/types/string_promptbook_server_url_private.d.ts +9 -0
  124. package/umd/src/types/string_url.d.ts +14 -141
  125. package/umd/src/types/string_url_image.d.ts +7 -0
  126. package/umd/src/types/string_url_image_private.d.ts +9 -0
  127. package/umd/src/types/string_url_private.d.ts +0 -80
  128. package/umd/src/version.d.ts +1 -1
package/README.md CHANGED
@@ -494,24 +494,6 @@ You can install all of them at once:
494
494
  npm i ptbk
495
495
  ```
496
496
 
497
- Promptbook also ships coding-agent CLI utilities through `ptbk coder`.
498
- For full `coder run` options and runner-specific examples, see [`scripts/run-codex-prompts/README.md`](./scripts/run-codex-prompts/README.md).
499
-
500
- #### `ptbk coder`
501
-
502
- Locally in this repository:
503
-
504
- ```bash
505
- npx ts-node ./src/cli/test/ptbk.ts coder run --dry-run
506
- ```
507
-
508
- In another project with `ptbk` installed:
509
-
510
- ```bash
511
- npm install ptbk
512
- npx ptbk coder run --dry-run
513
- ```
514
-
515
497
  Or you can install them separately:
516
498
 
517
499
  > ⭐ Marked packages are worth to try first
@@ -549,6 +531,125 @@ Or you can install them separately:
549
531
 
550
532
 
551
533
 
534
+ ### 🤖 Promptbook Coder
535
+
536
+ `ptbk coder` is Promptbook's workflow layer for AI-assisted software changes. Instead of opening one chat and manually copy-pasting tasks, you keep a queue of coding prompts in `prompts/*.md`, let a coding agent execute the next ready task, and then verify the result before archiving the prompt.
537
+
538
+ Promptbook Coder is **not another standalone coding model**. It is an orchestration layer over coding agents such as **GitHub Copilot**, **OpenAI Codex**, **Claude Code**, **Opencode**, **Cline**, and **Gemini CLI**. The difference is that Promptbook Coder adds a repeatable repository workflow on top of them:
539
+
540
+ - prompt files with explicit statuses like `[ ]`, `[x]`, and `[-]`
541
+ - automatic selection of the next runnable task, including priority support
542
+ - optional shared repo context loaded from a file such as `AGENTS.md`
543
+ - automatic `git add`, commit, and push after each successful prompt
544
+ - dedicated coding-agent Git identity and optional GPG signing
545
+ - verification and repair flow for work that is done, partial, or broken
546
+ - helper commands for generating boilerplates and finding refactor prompts
547
+
548
+ In short: tools like Claude Code, Codex, or GitHub Copilot are the **engines**; Promptbook Coder is the **workflow** that keeps coding work structured, reviewable, and repeatable across many prompts.
549
+
550
+ #### How the workflow works
551
+
552
+ 1. `ptbk coder init` prepares the project for the coder workflow, seeds project-owned generic templates in `prompts/templates/`, creates a starter `AGENTS.md` context file, adds helper `npm run coder:*` scripts, ensures `.gitignore` ignores `/.tmp`, and configures VS Code prompt screenshots in `prompts/screenshots/`.
553
+ 2. `ptbk coder generate-boilerplates` creates prompt files in `prompts/`.
554
+ 3. You replace placeholder `@@@` sections with real coding tasks.
555
+ 4. `ptbk coder run` sends the next ready `[ ]` prompt to the selected coding agent.
556
+ 5. Promptbook Coder marks the prompt as done `[x]`, records runner metadata, then stages, commits, and pushes the resulting changes.
557
+ 6. `ptbk coder verify` reviews completed prompts, archives finished files to `prompts/done/`, and appends a repair prompt when more work is needed.
558
+
559
+ Prompts marked with `[-]` are not ready yet, prompts containing `@@@` are treated as not fully written, and prompts with more `!` markers have higher priority.
560
+
561
+ #### Features
562
+
563
+ - **Multi-runner execution:** `openai-codex`, `github-copilot`, `cline`, `claude-code`, `opencode`, `gemini`
564
+ - **Context injection:** `--context AGENTS.md` or inline extra instructions
565
+ - **Reasoning control:** `--thinking-level low|medium|high|xhigh` for supported runners
566
+ - **Interactive or unattended runs:** default wait mode, or `--no-wait` for batch execution
567
+ - **Git safety:** clean working tree check by default, optional `--ignore-git-changes`
568
+ - **Prompt triage:** `--priority` to process only more important tasks first
569
+ - **Failure logging:** failed runs write a neighboring `.error.log`
570
+ - **Line-ending normalization:** changed files are normalized back to LF by default
571
+
572
+ #### Local usage in this repository
573
+
574
+ When working on Promptbook itself, the repository usually runs the CLI straight from source:
575
+
576
+ ```bash
577
+ npx ts-node ./src/cli/test/ptbk.ts coder init
578
+
579
+ npx ts-node ./src/cli/test/ptbk.ts coder generate-boilerplates --template prompts/templates/common.md
580
+
581
+ npx ts-node ./src/cli/test/ptbk.ts coder generate-boilerplates --template prompts/templates/agents-server.md
582
+
583
+ npx ts-node ./src/cli/test/ptbk.ts coder run --agent github-copilot --model gpt-5.4 --thinking-level xhigh --context AGENTS.md
584
+
585
+ npx ts-node ./src/cli/test/ptbk.ts coder run --agent github-copilot --model gpt-5.4 --thinking-level xhigh --context AGENTS.md --ignore-git-changes --no-wait
586
+
587
+ npx ts-node ./src/cli/test/ptbk.ts coder find-refactor-candidates
588
+
589
+ npx ts-node ./src/cli/test/ptbk.ts coder find-refactor-candidates --level xhigh
590
+
591
+ npx ts-node ./src/cli/test/ptbk.ts coder verify
592
+ ```
593
+
594
+ #### Using `ptbk coder` in an external project
595
+
596
+ If you want to use the workflow in another repository, install the package and invoke the `ptbk` binary. After local installation, `npx ptbk ...` is the most portable form; plain `ptbk ...` also works when your environment exposes the local binary on `PATH`.
597
+
598
+ ```bash
599
+ npm install ptbk
600
+
601
+ ptbk coder init
602
+
603
+ npx ptbk coder generate-boilerplates
604
+
605
+ npx ptbk coder generate-boilerplates --template prompts/templates/common.md
606
+
607
+ npx ptbk coder run --agent github-copilot --model gpt-5.4 --thinking-level xhigh --context AGENTS.md
608
+
609
+ npx ptbk coder run --agent github-copilot --model gpt-5.4 --thinking-level xhigh --context AGENTS.md --ignore-git-changes --no-wait
610
+
611
+ npx ptbk coder find-refactor-candidates
612
+
613
+ npx ptbk coder find-refactor-candidates --level xhigh
614
+
615
+ npx ptbk coder verify
616
+ ```
617
+
618
+ `ptbk coder init` also bootstraps a starter `AGENTS.md`, adds `package.json` scripts for the four main coder commands, adds the coder temp ignore to `.gitignore`, and configures `.vscode/settings.json` so pasted images from `prompts/*.md` land in `prompts/screenshots/`.
619
+
620
+ #### What each command does
621
+
622
+ | Command | What it does |
623
+ | --- | --- |
624
+ | `ptbk coder init` | Creates `prompts/`, `prompts/done/`, the project-generic template files materialized in `prompts/templates/` (currently `common.md`), and a starter `AGENTS.md`; ensures `.env` contains `CODING_AGENT_GIT_NAME`, `CODING_AGENT_GIT_EMAIL`, and `CODING_AGENT_GIT_SIGNING_KEY`; adds helper coder scripts to `package.json`; ensures `.gitignore` contains `/.tmp`; and configures `.vscode/settings.json` to save pasted prompt images into `prompts/screenshots/`. |
625
+ | `ptbk coder generate-boilerplates` | Creates new prompt markdown files with fresh emoji tags so you can quickly fill in coding tasks; `--template` accepts either a built-in alias or a markdown file path relative to the project root. |
626
+ | `ptbk coder run` | Picks the next ready prompt, appends optional context, runs it through the selected coding agent, marks success or failure, then commits and pushes the result. |
627
+ | `ptbk coder find-refactor-candidates` | Scans the repository for oversized or overpacked files and writes prompt files for likely refactors; `--level <low|medium|high|xhigh>` makes the scan more or less aggressive. |
628
+ | `ptbk coder verify` | Walks through completed prompts, archives truly finished work, and adds follow-up repair prompts for unfinished results. |
629
+
630
+ #### Most useful `ptbk coder run` flags
631
+
632
+ | Flag | Purpose |
633
+ | --- | --- |
634
+ | `--agent <name>` | Selects the coding backend. |
635
+ | `--model <model>` | Chooses the runner model; required for `openai-codex` and `gemini`, optional for `github-copilot`. |
636
+ | `--context <text-or-file>` | Appends extra instructions inline or from a file like `AGENTS.md`. |
637
+ | `--thinking-level <level>` | Sets reasoning effort for supported runners. |
638
+ | `--no-wait` | Skips interactive pauses between prompts for unattended execution. |
639
+ | `--ignore-git-changes` | Disables the clean-working-tree guard. |
640
+ | `--priority <n>` | Runs only prompts at or above the given priority. |
641
+ | `--dry-run` | Prints which prompts are ready instead of executing them. |
642
+ | `--allow-credits` | Lets OpenAI Codex spend credits when required. |
643
+ | `--auto-migrate` | Runs testing-server database migrations after each successful prompt. |
644
+
645
+ #### Typical usage pattern
646
+
647
+ 1. Initialize once with `ptbk coder init`.
648
+ 2. Customize `prompts/templates/*.md` if needed, then create or write prompt files in `prompts/`.
649
+ 3. Customize the starter `AGENTS.md` with repository-specific instructions, then pass `--context AGENTS.md`.
650
+ 4. Run one prompt at a time interactively, or use `--no-wait` for unattended batches.
651
+ 5. Finish with `ptbk coder verify` so resolved prompts are archived and broken ones get explicit repair follow-ups.
652
+
552
653
 
553
654
 
554
655