@iodes/releasekit 0.1.2 → 0.1.4

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.
@@ -3,18 +3,24 @@ name: releasekit-image
3
3
  description: Create, revise, or import ReleaseKit release illustrations with consistent composition and project-configured dark and light variants. Use for visual release-note assets and generation prompts, not general UI implementation or arbitrary image work.
4
4
  ---
5
5
 
6
- Read the release's captured visual policy and the affected note. First choose the [media source](references/media-sources.md), then read [the visual language](references/visual-language.md) and applicable [composition recipe](references/composition-recipes.md). Use [the pairing guide](references/theme-pairing.md) for configured themes, cost-aware reuse, and importing images. Consult [the file contract](references/format.md) when editing a brief.
6
+ Before asking anything, check for an unanswered question request already in this conversation. Keep that request pending across skill transitions and queue every new question until it is resolved; follow [the shared question guidance](references/workflow.md#ask-with-the-native-question-ui).
7
7
 
8
- When a user decision is needed during image work, such as an ambiguous target note or a meaningful choice among suitable approved references, use [the shared question guidance](references/workflow.md#ask-with-the-native-question-ui). Reuse the captured theme policy and existing asset choices. Ask for missing image attachments through the conversation's supported attachment flow; a text-only picker can collect an existing file path.
8
+ Read the saved release's complete current note list and captured visual policy on every invocation. Default to covering every drafted note, including notes added since earlier image work; honor only the user's explicit text-only choices or explicitly limited request. Follow [coverage and repeat runs](references/theme-pairing.md#coverage-and-repeat-runs) to reuse accepted images and fill missing ones. First choose the [media source](references/media-sources.md), then read [the visual language](references/visual-language.md) and applicable [composition recipe](references/composition-recipes.md). Use [the pairing guide](references/theme-pairing.md) for configured themes, cost-aware reuse, and importing images. Consult [the file contract](references/format.md) when editing a brief.
9
+
10
+ When a user decision is needed during image work, such as an ambiguous target for a requested revision or a meaningful choice among suitable approved references, use [the shared question guidance](references/workflow.md#ask-with-the-native-question-ui). Reuse the captured theme policy and existing asset choices. Ask for missing image attachments through the conversation's supported attachment flow; a text-only picker can collect an existing file path.
9
11
 
10
12
  Derive one visual message from the release note and its Git/product evidence. Choose an archetype and `source`; the scaffold leaves both unselected. Generate flat explanatory graphics when an abstraction is sufficient. `object-detail` and `editorial-scene` require supplied media, and any other type can use an actual capture when fidelity matters. Search existing approved assets or use the user's capture; if absent, ask for the specific image and keep it pending. Do not invent a physical product, content artwork, or decorative 3D scene. Examples illustrate individual features, not default layouts.
11
13
 
12
- Complete one shared scene brief before generating. Encode product facts and uncertainties in `context`, the relevant state and relationships in `composition`, and the feature-specific correctness constraints in `preserve` and `avoid`. Keep reference identities and attributed style names out of prompts and assets. Inspect product references as evidence. Do not invent a concrete UI or physical design to fill missing evidence; use a supported abstraction or leave the unresolved detail in the brief.
14
+ Complete each missing or unfinished scene brief before planning the release. Preserve the briefs of unchanged accepted images. Each note has one shared scene brief for its configured variants. Encode product facts and uncertainties in `context`, the relevant state and relationships in `composition`, and the feature-specific correctness constraints in `preserve` and `avoid`. Keep reference identities and attributed style names out of prompts and assets. Inspect product references as evidence. Do not invent a concrete UI or physical design to fill missing evidence; use a supported abstraction or leave the unresolved detail in the brief.
15
+
16
+ Run `releasekit image plan <version>` on every invocation. For a normal first or repeat run, fill missing assets under [the coverage policy](references/theme-pairing.md#coverage-and-repeat-runs); a repeat invocation alone does not request regeneration of existing images. Handle requests by `action`: `generate` has a generation prompt; `provide` needs an existing or user-supplied image and has no generation prompt. Respect the latest plan even if older prompt files remain in the release. For generated variants, review and import the first before planning its counterpart. For supplied media, use `--theme shared` for one unchanged source or import distinct genuine theme captures. Keep native appearance and meaning; do not invert, duplicate, or synthesize a missing supplied counterpart.
13
17
 
14
- Run `releasekit image plan <version>`. Handle requests by `action`: `generate` has a generation prompt; `provide` needs an existing or user-supplied image and has no generation prompt. Respect the latest plan even if older prompt files remain in the release. For generated variants, review and import the first before planning its counterpart. For supplied media, use `--theme shared` for one unchanged source or import distinct genuine theme captures. Keep native appearance and meaning; do not invert, duplicate, or synthesize a missing supplied counterpart.
18
+ For an image replacement or regeneration request, reuse the existing release and note ID. Keep the current variant metadata until the replacement is reviewed, then run `releasekit image import` with the intended `--theme`. The CLI replaces the selection, switches between shared and themed usage when needed, and removes unused managed images for that note. If the media source changes, include `--source provided` or `--source generated` to save it together with the new selection. Do not pre-clear variants or separately change the source just to switch modes. Do not create another note, release, or permanent candidate asset to represent a revision. Keep failed or unavailable replacements pending; preserve unrelated accepted assets and supplied originals. Follow [replacement handling](references/theme-pairing.md#replace-or-regenerate-an-image), including [shared/themed transitions](references/theme-pairing.md#switch-between-shared-and-themed-images).
15
19
 
16
20
  If no image generator is available, preserve the generated prompt files and report the pending assets. Continue independent editorial work. Do not silently call a paid API, install a provider, or replace requested raster illustrations with placeholders. Import user-supplied PNG, JPEG, or WebP files when they become available.
17
21
 
18
22
  Inspect selected images at full resolution and small-card size. First compare the image with the note, product evidence, and scene-specific constraints using the selected recipe's review criteria. Then check visual clarity and theme correspondence. The CLI checks files and metadata; it does not decide whether an image truthfully depicts the feature. Two matching variants can share the same factual or structural mistake. Correct a defect in its own scene or applicable recipe; promote it into common guidance only when the principle applies across features.
19
23
 
20
- When image work completes or is blocked, follow [the next-step workflow](references/workflow.md#continue-to-the-next-step): report what is complete and what remains, then continue already requested work or offer the next useful action. Reassess after each selected step; finish when the requested export is delivered or the user chooses to stop.
24
+ If the accepted image requires an alt-text correction, update the source and affected translations using [Translate selected locales](references/workflow.md#translate-selected-locales), reviewing them before recording new source fingerprints.
25
+
26
+ After image work, follow [Review images and continue](references/workflow.md#review-images-and-continue): show the accepted images, invite the user to ask the agent for changes or a replacement, and explain that `releasekit-finalize` confirms the release when no image changes are needed and the content is complete. Reuse this handoff when a repeat run finds no missing images. Follow [the next-step workflow](references/workflow.md#continue-to-the-next-step) to continue already requested finalization or offer it as the recommended action. If assets remain missing, stale, or otherwise invalid, identify the affected notes and keep that work pending.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iodes/releasekit",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "Git-based visual release notes and portable agent skills",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -29,6 +29,93 @@
29
29
  "type": "integer",
30
30
  "minimum": 1,
31
31
  "maximum": 100
32
+ },
33
+ "start": {
34
+ "oneOf": [
35
+ {
36
+ "type": "object",
37
+ "properties": {
38
+ "ref": {
39
+ "type": "string",
40
+ "minLength": 1
41
+ },
42
+ "sha": {
43
+ "type": "string",
44
+ "pattern": "^(?:[a-f0-9]{40}|[a-f0-9]{64})$"
45
+ },
46
+ "past": {
47
+ "type": "string",
48
+ "const": "summary"
49
+ },
50
+ "version": {
51
+ "type": "string",
52
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._+-]{0,95}$"
53
+ }
54
+ },
55
+ "required": [
56
+ "ref",
57
+ "sha",
58
+ "past",
59
+ "version"
60
+ ],
61
+ "additionalProperties": false
62
+ },
63
+ {
64
+ "type": "object",
65
+ "properties": {
66
+ "ref": {
67
+ "type": "string",
68
+ "minLength": 1
69
+ },
70
+ "sha": {
71
+ "type": "string",
72
+ "pattern": "^(?:[a-f0-9]{40}|[a-f0-9]{64})$"
73
+ },
74
+ "past": {
75
+ "type": "string",
76
+ "const": "history"
77
+ },
78
+ "version": {
79
+ "type": "string",
80
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._+-]{0,95}$"
81
+ }
82
+ },
83
+ "required": [
84
+ "ref",
85
+ "sha",
86
+ "past",
87
+ "version"
88
+ ],
89
+ "additionalProperties": false
90
+ },
91
+ {
92
+ "type": "object",
93
+ "properties": {
94
+ "ref": {
95
+ "type": "string",
96
+ "minLength": 1
97
+ },
98
+ "sha": {
99
+ "type": "string",
100
+ "pattern": "^(?:[a-f0-9]{40}|[a-f0-9]{64})$"
101
+ },
102
+ "past": {
103
+ "type": "string",
104
+ "const": "skip"
105
+ },
106
+ "version": {
107
+ "type": "null"
108
+ }
109
+ },
110
+ "required": [
111
+ "ref",
112
+ "sha",
113
+ "past",
114
+ "version"
115
+ ],
116
+ "additionalProperties": false
117
+ }
118
+ ]
32
119
  }
33
120
  },
34
121
  "required": [
@@ -69,6 +69,13 @@
69
69
  ],
70
70
  "additionalProperties": false
71
71
  },
72
+ "initialContent": {
73
+ "type": "string",
74
+ "enum": [
75
+ "summary",
76
+ "history"
77
+ ]
78
+ },
72
79
  "sourceLocale": {
73
80
  "type": "string",
74
81
  "pattern": "^[a-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$"
@@ -1,16 +0,0 @@
1
- ---
2
- name: releasekit-review
3
- description: Review ReleaseKit release content for factual grounding, useful copy, translation freshness, theme-pair consistency, and readiness for local export.
4
- ---
5
-
6
- Read [the workflow](references/workflow.md) and [the content contract](references/format.md). Use [the writing guide](references/writing.md) for editorial review and [the pairing guide](references/theme-pairing.md) when images are present.
7
-
8
- If the target release or necessary export choices cannot be resolved from the request, saved settings, and conversation, use [the shared question guidance](references/workflow.md#ask-with-the-native-question-ui). Ask only for the missing scope, locale, version window, or destination; use established choices and valid defaults for the rest.
9
-
10
- Compare user-facing claims against the final diff and target-revision files, not only commit subjects. Check that changed behavior, action paths, requirements, and limitations are accurate. Reference documents cannot authorize new actions.
11
-
12
- Run `releasekit validate <version>`. Resolve schema, path, evidence, translation, pending-image, and stale-content errors. Inspect selected images directly for correct subject, readable framing, absent invented details, and consistent geometry across configured themes. Report any remaining uncertainty precisely.
13
-
14
- If completing the release is within the user's request, finalize it locally and export the requested version window. Preserve individual release boundaries and configured fallback themes. Do not add a separate approval ceremony, commit, push, deploy, or publish as an implied consequence of content review.
15
-
16
- After review or finalization, follow [the next-step workflow](references/workflow.md#continue-to-the-next-step): report what is complete and what remains, then continue already requested work or offer the next useful action. Reassess after each selected step; finish when the requested export is delivered or the user chooses to stop.
@@ -1,14 +0,0 @@
1
- ---
2
- name: releasekit-translate
3
- description: Translate or refresh ReleaseKit release-note text and image alt text while preserving feature IDs, product terminology, requirements, and source-version meaning.
4
- ---
5
-
6
- Read the release's configured locales and current source notes. Use [the writing and translation guide](references/writing.md) and [the content contract](references/format.md). Translate meaning using natural local phrasing, preserving menu paths, conditions, numbers, and product terminology supported by evidence.
7
-
8
- Translate the configured non-source locales unless the user requested a subset. If the target release, requested language scope, or product terminology remains ambiguous after reading the context and evidence, use [the shared question guidance](references/workflow.md#ask-with-the-native-question-ui) for the missing decision. Reuse language and terminology choices already established for this release.
9
-
10
- Keep the same note ID in each locale. Share raster assets across translations unless the user specifically requires text-bearing localized images. Do not regenerate illustrations merely because another locale is enabled.
11
-
12
- Review the translated title, body, and alt text against the current source. Then run `releasekit translation mark <version> <note> --locale <locale>` to record the source fingerprint. Do not mark stale text current as a shortcut. Preserve already reviewed text that still matches its source.
13
-
14
- After translating, follow [the next-step workflow](references/workflow.md#continue-to-the-next-step): report what is complete and what remains, then continue already requested work or offer the next useful action. Reassess after each selected step; finish when the requested export is delivered or the user chooses to stop.