chore(release): version packages - #1629
Open
openspec-release-bot[bot] wants to merge 1 commit into
Open
Conversation
openspec-release-bot
Bot
requested review from
clay-good
and removed request for
a team
August 11, 2026 20:31
openspec-release-bot
Bot
force-pushed
the
changeset-release/main
branch
13 times, most recently
from
August 11, 2026 23:43
5462c86 to
642d735
Compare
openspec-release-bot
Bot
force-pushed
the
changeset-release/main
branch
from
August 12, 2026 00:15
642d735 to
3e89d4d
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@fission-ai/openspec@1.9.0
Minor Changes
#1622
59c16a4Thanks @clay-good! - ### New Featuresopenspec initgenerates OpenSpec commands under.commandcode/commands/opsx-<id>.md(invoked as/opsx-<id>) alongside the skills under.commandcode/skills/, matching Command Code's documented custom-slash-command surface.#1613
42d7f67Thanks @Angelthebestone! - ### New Featuresopenspec initnow supports Command Code as an adapterless skills-only tool. It installs the OpenSpec skills under.commandcode/skills/and invokes them as/openspec-*commands, matching Command Code's native skill surface.#1604
83be9d1Thanks @clay-good! - Addopenspec validate --archived: an opt-in check that every change underchanges/archive/has all of itstasks.mdcheckboxes ticked, exiting non-zero if any are unchecked. This surfaces changes that were archived with unfinished work — which the normal validate flow never catches, because it only looks at active changes — and is meant for a pre-commit or CI hook (#205). It is a standalone scope: it does not alter any existingvalidateinvocation and does not re-validate already-applied spec deltas.Patch Changes
#1530
bf5099eThanks @clay-good! - Apply workflow now tells agents to surface unexpected scope instead of hiding it. When a task needs work beyond what the spec describes, the/opsx:applyskill and command guidance direct the agent to pause and report the added scope rather than silently narrowing, deferring, or simplifying away specified behavior, and to mark a task complete only when its specified behavior is fully implemented. Fixes #1529.#1603
9ae75c8Thanks @clay-good! -openspec archiveno longer writes terminal escape codes to a redirected or captured stdout. Its confirmation prompts and the no-argument change picker drew their live UI with ANSI cursor-move sequences even when stdout was not a terminal — noise in a redirected log, and in some non-interactive hosts an unbounded render loop that could grow the captured output until the disk filled. When stdout (or stdin) is not a terminal, archive now reads the confirmations as plain text, and a no-argument run asks you to pass a change name up front instead of drawing a menu. Piped answers (printf 'y\n' | openspec archive …) and--yesbehave as before, and interactive terminals are unchanged. Fixes #1526.#1528
9425897Thanks @Marzx13! - Canonicalize rebuilt specs to end with exactly one final LF. Previously a spec whose## Requirementssection was last was rebuilt with a trailing blank line (\n\n), which failed Markdown whitespace checks after sync or archive. Internal spacing and content after the Requirements section are unchanged.#1522
07dea6eThanks @clay-good! - ### Bug Fixesagentstarget —openspec updateno longer overwrites an existing.agentsskills tree (and its ownership marker) when Codex is detected only from leftover global~/.codex/prompts. Because Codex and the vendor-neutralagentstarget share.agents/skills, a project that used theagentstarget could have its generic skills silently rewritten with Codex-specific syntax and its target flipped to Codex on the nextupdate --force. The legacy-upgrade path now respects the established owner of a shared skills directory, matching the one-writer ruleopenspec initalready applies. When an upgrade is skipped this way, that tool's repo-local legacy files (e.g..codex/prompts/openspec-*.md) are also preserved rather than cleaned up, since no replacement was written to take their place. A genuine first-time Codex upgrade (no.agentstree yet) is unaffected.#1521
c751b3dThanks @clay-good! - ### Bug Fixesopenspec validateandopenspec archivenow recognize every level-4 (####followed by whitespace) child of a requirement as a scenario, matching how the spec is counted elsewhere. Before, the scenario-loss guard only recognized headers written exactly as#### Scenario:, so aMODIFIEDrequirement that dropped a differently-labeled child (for example#### Edge case) passed validation and was then permanently deleted by archive with no warning. Both paths now agree, so the loss is caught at authoring time. Scenario names are normalized when comparing (an optionalScenario:prefix and a CommonMark closing#run are ignored), so simply relabeling a scenario is not mistaken for dropping one.#1610
17581c1Thanks @clay-good! - ### Bug Fixesopenspec initnow suggests an IDE restart only when an IDE-resident tool such as Cursor, GitHub Copilot, Continue, or Cline was configured. CLI tools like Claude Code, Codex, and Gemini CLI no longer show the hint, since their commands work as soon as the files exist.#1609
804427bThanks @clay-good! - Suppress the first-run telemetry disclosure notice when--jsonis used. On afirst-ever run the notice was written to stdout and could break
--jsonconsumers; it is now deferred to the first later non-JSON run, keeping
--jsonoutput valid while still guaranteeing the disclosure.