Thanks for looking at a BaseLayer agent. These are small, personally-operated tools, but PRs and issues are welcome.
Every repo follows the same shape:
git clone https://github.com/BaseLayerAI/<repo>
cd <repo>
cp .env.example .env # fill in your own values — see the README's env table- Node repos: Node 20+,
npm install, then thenpm runscripts listed inpackage.json. - Python repos: Python 3.12+, install from
requirements.txtorpyproject.toml. - Bash repos: no install; scripts are self-contained. Run
bash -non anything you touch.
- Pass the lint gate. CI runs the org's reusable workflow: lint/typecheck/build/test for Node,
ruff+compileallfor Python,shellcheck --severity=errorfor shell. Run the equivalent locally first. - Use conventional commits.
feat:,fix:,docs:,chore:,refactor:,test:— scoped where it helps (fix(collector): ...). Squash-merge is the only merge mode, so the PR title becomes the commit. - Never include secrets. No tokens, keys, cookies, session state, or real recipient addresses — in code, in tests, in fixtures, or in PR descriptions and logs. Configuration goes through env vars; if you add one, update
.env.exampleand the README's env table in the same PR. GitHub push protection is enabled, but treat it as a backstop, not the gate. - Update the docs you invalidated. If behavior, schedules, or env vars changed, the README (and
docs/RUNBOOK.mdwhere present) change in the same PR.
These agents are deliberately single-purpose. PRs that harden, simplify, or fix are an easy yes; PRs that grow an agent into a platform are probably a no — open an issue first.