You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: additive include filters, external prompts, and XML output format (#20)
* fix: make --include-dir and --include-files work additively
Previously, when both --include-dir and --include-files were specified,
includeFiles would clear the includeDirs patterns, making them mutually
exclusive. Now they combine additively - files from both filters are
included in the output.
* test: add E2E tests for combined --include-dir and --include-files
- Add integration tests verifying additive behavior of includeDirs + includeFiles
- Add sample-rust-project in playground/ for manual testing
- Tests verify: tree output, prompt, file inclusion, ignores working correctly
* fix: support external prompt file paths and prepend prompts without placeholder
- External paths (containing / or \) are now used directly instead of
being nested under codefetch/prompts/
- Prompts without {{CURRENT_CODEBASE}} placeholder are prepended to
the codebase content instead of replacing it
* feat: add XML tags for structured output sections
- Wrap prompts in <task>...</task> tags
- Wrap file tree in <filetree>...</filetree> tags
- Wrap source code in <source_code>...</source_code> tags
This provides better structure for AI models to understand the different
sections of the codebase output.
* docs: update README and changelogs for v2.2.0
- Document XML-structured output format with <task>, <filetree>, <source_code> tags
- Document additive --include-dir and --include-files behavior
- Document external prompt file path support
- Update all changelogs (root, cli, sdk) for v2.2.0
* chore: update pnpm-lock.yaml
* docs: add pnpm lockfile troubleshooting to HOW-TO-RELEASE
* fix: use workspace:* for codefetch-sdk dependency
Copy file name to clipboardExpand all lines: CHANGELOG.md
+15Lines changed: 15 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,20 @@
1
1
# Changelog
2
2
3
+
## 2.2.0
4
+
5
+
### Added
6
+
-**XML-structured output format** - Output now uses semantic XML tags for better AI parsing:
7
+
-`<task>...</task>` - Wraps the prompt/instructions
8
+
-`<filetree>...</filetree>` - Wraps the project tree structure
9
+
-`<source_code>...</source_code>` - Wraps all source code files
10
+
-**Additive `--include-dir` and `--include-files`** - These options now work together additively instead of being mutually exclusive. Use both to include specific directories PLUS specific files.
11
+
-**External prompt file support** - Prompt files with paths (e.g., `-p docs/arch/prompt.md`) are now correctly resolved from the project root instead of requiring them to be in `codefetch/prompts/`
12
+
13
+
### Fixed
14
+
- Fixed `--include-dir` and `--include-files` being mutually exclusive - now they combine additively
15
+
- Fixed external prompt file paths not being found when containing directory separators
16
+
- Fixed prompts without `{{CURRENT_CODEBASE}}` placeholder not including the codebase content
- Tag push rejected: pull/rebase or fast-forward `main`, then rerun
163
+
-**CI fails with `ERR_PNPM_OUTDATED_LOCKFILE`**: The lockfile is out of sync with `package.json`. This happens when dependencies change (e.g., `workspace:*` → `^2.1.0`). Fix it locally:
0 commit comments