Skip to content

[Bug]: BOM added to CLAUDE.md when updating specify/speckit #2234

Description

@bucweat

Bug Description

Directly from Claude

 WRT claude.md was BOM not present before the update of speckit?

● The diff is clear on this — the BOM was introduced by the speckit update:

  -# CLAUDE.md
  +# CLAUDE.md

  Before the update: no BOM. After: BOM added. So yes, speckit's update-context script wrote CLAUDE.md with a UTF-8 BOM, likely because it's using
  PowerShell's default file encoding (PowerShell historically outputs UTF-8-with-BOM). Since "script": "ps" is set in init-options.json, it's running the
  .ps1 variant.

  Worth flagging to the speckit maintainers — the update-context.ps1 script should explicitly use -Encoding UTF8 with [System.IO.File]::WriteAllText or
  Out-File -Encoding utf8NoBOM (PowerShell 6+) to avoid the BOM. It's harmless for most tooling, but Claude Code and some parsers can be sensitive to it.

Version bump: 0.5.1.dev0 → 0.7.1.dev0

Steps to Reproduce

  1. updated speckit uv tool update specify-cli
  2. cd project directory
  3. run specify init --here --force --integration claude

Expected Behavior

No BOM added to CLAUDE.md

Actual Behavior

BOM added to CLAUDE.md

Specify CLI Version

Version bump: 0.5.1.dev0 → 0.7.1.dev0

AI Agent

Claude Code

Operating System

windows 11

Python Version

Python 3.13.12

Error Logs

Additional Context

Not a big deal but as Claude mentions BOM could mess up parsers.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions