Chalk Labs
Need help deploying make?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/otaviof-make
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/make
Tools it pre-approves 2
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Bash,Read
What's inside
- Skill name
make- Description
- Run, discover, or review Makefile targets. Use for build automation.
- License
- Apache-2.0
- Allowed tools
- Bash,, Read
- Instructions
- 70 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves some shell commands
Files (1)
- SKILL.md
SKILL.md (first lines)
## Instructions
1. **Validate**: Search for `Makefile` in cwd, parent dirs up to 3 levels (skip for `--review` with explicit path)
2. **Parse arguments**:
- `--list` → List targets with descriptions
- `--help <target>` → Show target prerequisites and commands
- `--review [path]` → Check Makefile against best practices (default: found Makefile)
- `<target>` → Execute target
- (none) → Run default target
3. **Execute**:
- **List mode**: `grep '^[a-zA-Z0-9_-]*:' Makefile` to extract targets
- **Help mode**: Read Makefile, show target line and prerequisites
- **Review mode**: Read Makefile (and `hack/` scripts if present), check for:
* Recursive make: `$(MAKE)`, `${MAKE}`, `cd ... && make` in targets
* Complex targets: >3 shell commands without delegation to `hack/` script
* Scripts calling make: `hack/*.sh` that invoke `make` back (scripts are leaves)
* Report: "PASS" or violations with line numbers and recommended fix
- **Run mode**: `make <target>`, capture stdout/stderr
4. **Report**:
- List: Target names with inline comments as descriptions
- Help: Prerequisites and command lines
- Review: "PASS" or "Issues found:" with violations and recommended fixes
- Run: "Target `<target>` completed (exit: 0)" or error with stderr summary
5. **Edge cases**:
- No Makefile: "No Makefile found in current or parent directories"
- Target not found: List available targets
- Make failure: Report exit code and last 10 lines of stderr
## Makefile Principles
| Principle | Guidance |
|-----------|----------|
| **Single source of authority** | Makefile is canonical entry point for all project automation |
| **No recursive make** | Never use `$(MAKE)` or `${MAKE}` inside targets; use `include` for unified dependency graph |
| **CI calls make, never reimplements** | CI/CD pipelines only trigger `make <target>`; all logic lives in Makefile and `hack/` scripts |
| **No duplication** | Logic exists in one place: Makefile target or `hack/` script — never repeated in CI config |
| **Modular via include** | Split into `build/*.mk` files; all form unified dependency graph |
| **Hack scripts for complexity** | Targets needing >3 commands → extract to `hack/<name>.sh`; Makefile passes values via env vars |
| **Scripts are leaves** | `hack/` scripts never call `make`; Makefile orchestrates, scripts execute |
## Hack Scripts Pattern
```makefile
# Target delegates to hack/ script via env vars
.PHONY: release
release: ## Build and publish release artifacts
IMAGE_TAG=$(IMAGE_TAG) REGISTRY=$(REGISTRY) hack/release.sh
```
- Extract when a target exceeds 3 shell commands
- Script receives configuration through environment variables, not arguments
- Script is a leaf: it never calls `make` back
## Anti-Pattern: Recursive Make
```makefile
# WRONG — parallel automation hierarchies
$(MAKE) -C subdir clean
# RIGHT — unified via include
include subdir/subdir.mk
clean: subdir-clean
```
`include` maintains single dependency graph; recursive `$(MAKE)` breaks it.From otaviof/gosmith, Apache-2.0.
More from otaviof/gosmith
- 0.501score
pr-comments
otaviof
Fetch PR review comments, triage against codebase, apply fixes, generate reply report.
SkillCFreshness: C★ 2Claude Code - 0.436score
defuddle
otaviof
Extract readable web content, removing navigation/ads to save tokens.
SkillDFreshness: D★ 2Claude Code +9 - 0.436score
agent-persona
otaviof
5-element persona framework template for creating Claude Code agents
SkillDFreshness: D★ 2Claude Code +9 - 0.436score
go-code
otaviof
Go code quality standards, idioms, and YAGNI/KISS development principles.
SkillDFreshness: D★ 2Claude Code +9 - 0.433score
go-cover
otaviof
Generate Go test coverage report with package breakdown.
SkillDFreshness: D★ 2Claude Code +9 - 0.433score
ginkgo
otaviof
Run Ginkgo BDD tests with Kubernetes-aligned conventions.
SkillDFreshness: D★ 2Claude Code +9 - 0.433score
go-check
otaviof
Run Go verification pipeline (build + test + vet + lint).
SkillDFreshness: D★ 2Claude Code +9 - 0.431score
verify
otaviof
Verify answers by checking sources, contradictions, and confidence level.
SkillDFreshness: D★ 2Claude Code +9 - 0.431score
jira
otaviof
Fetch Jira tickets as clean markdown using native ADF format.
SkillDFreshness: D★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Apr 9, 2026 (6 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/otaviof/gosmith
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from otaviof
- 0.501score
pr-comments
otaviof
Fetch PR review comments, triage against codebase, apply fixes, generate reply report.
SkillCFreshness: C★ 2Claude Code - 0.436score
defuddle
otaviof
Extract readable web content, removing navigation/ads to save tokens.
SkillDFreshness: D★ 2Claude Code +9 - 0.436score
agent-persona
otaviof
5-element persona framework template for creating Claude Code agents
SkillDFreshness: D★ 2Claude Code +9 - 0.436score
go-code
otaviof
Go code quality standards, idioms, and YAGNI/KISS development principles.
SkillDFreshness: D★ 2Claude Code +9 - 0.433score
go-cover
otaviof
Generate Go test coverage report with package breakdown.
SkillDFreshness: D★ 2Claude Code +9 - 0.433score
ginkgo
otaviof
Run Ginkgo BDD tests with Kubernetes-aligned conventions.
SkillDFreshness: D★ 2Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get make running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
make skill. Agent Mart. https://agentmart.dev/skills/otaviof-make (last updated 2026-10-24)