Operational guide for the maintainer. For contributor instructions, see CONTRIBUTING.md.
- Bump the version in
smoosh(line 8:readonly VERSION="X.Y.Z"). - Update CHANGELOG.md — move items from
[Unreleased]into a new[X.Y.Z] - YYYY-MM-DDsection. - Commit:
git commit -s -m "chore: prepare vX.Y.Z release". - Tag:
git tag --no-sign vX.Y.Z. - Push both:
git push origin main && git push origin vX.Y.Z. - Verify the release workflow:
- Quality gate (ShellCheck, shfmt, bats) must pass.
- GitHub Release is created with
smoosh,smoosh.sha256, andinstall.sh. - Homebrew tap auto-updates (
update-tapjob).
- Check the tap — confirm the formula SHA256 and version match:
brew update && brew info K1-R1/tap/smoosh.
If the update-tap job fails, update the formula manually:
download the new tarball, compute sha256sum, and commit to
K1-R1/homebrew-tap.
Dependabot handles GitHub Actions (uses: entries) on a monthly cycle.
Everything else needs manual bumping.
| Dependency | File | Current |
|---|---|---|
actions/checkout |
ci.yml, release.yml |
v6.0.2 |
actions/upload-artifact |
ci.yml |
v7.0.0 |
| Dependency | File(s) | Current | Check |
|---|---|---|---|
| shfmt | ci.yml:32, release.yml:48 |
v3.13.0 | Releases |
| bats-core | ci.yml:69,108, release.yml:56 |
v1.13.0 | Releases |
| actionlint | ci.yml:41 |
1.7.11 | Releases |
| zizmor | ci.yml:48 |
1.23.1 | PyPI |
| markdownlint-cli2 | prek.toml |
v0.21.0 | npm |
| cspell | prek.toml |
9 | npm |
When bumping a manual dependency: update the version pin, run CI locally
(prek run && bats test/*.bats), and commit with
chore: bump <tool> to vX.Y.Z.
Quarterly — dependency audit
Check the manual dependencies table above for new releases. Bump, test, commit.
Semi-annually — README accuracy
Verify external claims haven't changed:
- NotebookLM source limits (currently: 500k words/source, Free 50 / Plus 300 / Ultra 600 sources)
- Installation URLs still resolve
- Third-party integration steps (Claude Projects, ChatGPT) still match their current UIs
On issue/PR activity
Aim to triage new issues within a week. For PRs: check CI passes, DCO is signed, and changes match the project's scope.
These settings are applied via the GitHub UI, not tracked in code:
- Branch ruleset on
main: require PR, block force push, require status checks (lint, test, bash32). - Tag ruleset: require tag match
v*, bypass actor: repository admin. - Merge policy: squash merge only, delete branch on merge.
- GitHub topics:
bash,cli,rag,llm,notebooklm,knowledge-base,developer-tools,context-window. - HOMEBREW_TAP_TOKEN: fine-grained PAT scoped to
K1-R1/homebrew-tap(Contents: read+write). Stored in thehomebrewenvironment on this repo.