Motivation
The PR-review and repo-analysis workflows run on the released xmd binary but
still pass --component-dir core/components, pointing at the checked-out repo
(see .github/workflows/review.yml and .github/workflows/repo-analysis.yml).
core/components are framework provider components (AnthropicProvider.md,
Instruction.md, Sample.md, …) that should ship inside the binary, so a
consumer running the binary doesn't need the repo's core/components on disk.
Goal
Bundle core/components into the xmd binary and add a default component
search path so --component-dir core/components is no longer required.
Notes / investigation
Unlike @executablemd/code-review-agent (a module resolved by import, bundled
via deno compile --include), core/components are .md files read from disk
by path at runtime. A compiled binary can't read them by their repo-relative
path, so this needs runtime component-resolution work:
- Embed the
.md components at compile time (--include core/components) and
confirm they're readable at runtime from the compiled binary.
- Add a default embedded component directory to the CLI's component resolution
so bundled components are found without --component-dir.
Refs
Deferred from PR #82 (review runs on the released binary). Once done, drop the
--component-dir core/components flag from both workflows.
Motivation
The PR-review and repo-analysis workflows run on the released
xmdbinary butstill pass
--component-dir core/components, pointing at the checked-out repo(see
.github/workflows/review.ymland.github/workflows/repo-analysis.yml).core/componentsare framework provider components (AnthropicProvider.md,Instruction.md,Sample.md, …) that should ship inside the binary, so aconsumer running the binary doesn't need the repo's
core/componentson disk.Goal
Bundle
core/componentsinto thexmdbinary and add a default componentsearch path so
--component-dir core/componentsis no longer required.Notes / investigation
Unlike
@executablemd/code-review-agent(a module resolved by import, bundledvia
deno compile --include),core/componentsare.mdfiles read from diskby path at runtime. A compiled binary can't read them by their repo-relative
path, so this needs runtime component-resolution work:
.mdcomponents at compile time (--include core/components) andconfirm they're readable at runtime from the compiled binary.
so bundled components are found without
--component-dir.Refs
Deferred from PR #82 (review runs on the released binary). Once done, drop the
--component-dir core/componentsflag from both workflows.