Claude Code, Codex & OpenCode toolkit — skills, commands, and subagents, synced with one CLI. Built for the day-to-day work of PrestaShop development teams.
Website & docs → mallard.educalvolopez.com
| Tool | What |
|---|---|
| ps-lando | CLI to scaffold a Lando environment with PrestaShop + Panda theme |
Note: the PrestaShop/Panda expert agents + knowledge base from prestashop-experts are also bundled here — see the Agents section below. The standalone plugin stays available for external/freelance use; mallard is the team distribution.
brew install educlopez/tap/mallardUpgrade later with brew upgrade mallard.
scoop bucket add educlopez https://github.com/educlopez/scoop-bucket
scoop install mallardUpgrade later with scoop update mallard.
curl -fsSL https://raw.githubusercontent.com/educlopez/mallard/main/install.sh | bashDrops the binary into ~/.local/bin/mallard (override with MALLARD_INSTALL_DIR=/usr/local/bin). Make sure ~/.local/bin is on your PATH.
Pin a specific version:
MALLARD_VERSION=v0.2.0 curl -fsSL https://raw.githubusercontent.com/educlopez/mallard/main/install.sh | bashGrab the latest zip from Releases (mallard_<version>_windows_amd64.zip or _arm64.zip), extract it, and move mallard.exe somewhere on your PATH. Or use WSL / Git Bash with the curl installer above.
mallard update # install Claude/Codex/OpenCode skills + commands
mallard doctor # verify installation
mallard # launch interactive TUImallard # interactive TUI
mallard install # same as above
mallard install --agent claude # install only to claude (non-interactive)
mallard install --all # install to all detected agents (non-interactive)
mallard update # re-link skills/commands
mallard doctor # check symlink health per agent
mallard registry # list installed skills/commands
mallard version # print versionThe binary auto-detects installed agents (claude, codex, opencode, agents, gemini, cursor, windsurf) and symlinks the appropriate skills/commands directories. Per-agent support varies: each agent only receives the kinds it hosts (e.g. commands link to claude/opencode; sub-agents to claude/cursor).
git clone git@github.com:educlopez/mallard.git
cd mallard
go build -o mallard .
./mallard updateRe-run the curl-pipe installer to upgrade the binary, then re-link skills:
curl -fsSL https://raw.githubusercontent.com/educlopez/mallard/main/install.sh | bash
mallard update # re-link skills/commands (backs up conflicts)Windows: download the latest zip from Releases and replace mallard.exe.
mallard update --list-backups and mallard update --restore <ts> recover prior state if anything went sideways.
| Skill | Trigger |
|---|---|
gitlab-security-setup |
Add Trivy + pnpm supply chain protection to GitLab projects (non-PS) |
lando-img-placeholder |
Static image placeholder for local Lando/PrestaShop dev |
ps-demo-user |
Create demo user in PrestaShop 8 (Lando) |
ps-security-audit |
Weekly CVE scan for PS projects: Friends of Presta module check + Trivy + core version |
ps-watch |
BrowserSync live-reload watcher for Panda child theme development in Lando |
panda-kb |
Knowledge base for the Panda theme by SunnyToo (st* modules, Easy Builder, demos) |
prestashop-kb |
Knowledge base for the PrestaShop 8/9 platform (Symfony, Twig BO, Smarty, hooks, migration) |
task-context |
Turn an Intervals task into a brief + git branch + route to the right skill; log time on finish (powers /task) |
ps-project-doc |
Generate a standardized, private (gitignored) CLAUDE.md for a PS repo by introspection |
ps-new-project |
Scaffold a new PS client project: child theme (panda/elementflow) + CSS build + CLAUDE.md |
| Command | What |
|---|---|
/lando |
Lando environment helpers |
/ps-customer |
Create test customer in PrestaShop |
/ps-url |
PrestaShop URL utilities |
/panda |
Ask the panda-expert agent (Panda theme + Easy Builder + st* modules) |
/ps |
Ask the prestashop-expert agent (PS 8/9 core: Symfony, Twig, Smarty, hooks, migration) |
/task |
Turn an Intervals task into ready-to-work context (brief, branch, route, time logging) |
/project-doc |
Generate a standardized, private CLAUDE.md for the current PS repo |
/new-project |
Scaffold day-1 setup for a new PS project (child theme, CSS build, docs) |
Claude Code subagents, symlinked to ~/.claude/agents/ (Claude only). The *-expert agents are
CWD-first (inspect project source before relying on KB snapshots) and consult the bundled *-kb skills.
| Agent | Domain |
|---|---|
panda-expert |
Panda theme by SunnyToo, st* modules, Easy Builder, SunnyToo demos |
prestashop-expert |
PrestaShop 8/9 core: themes, parent-child, Symfony BO, Twig, Smarty, hooks, modules, migration 8→9 |
task-classifier |
Classify an Intervals task into a work type to route it (used by /task) |
layout-builder |
Implement storefront layout/CSS on a PS child theme (Panda or ElementFlow) |
The knowledge base lives in-repo under skills/panda-kb/references/ and
skills/prestashop-kb/references/ — that's the source of truth. Edit it directly; no
external vault or per-machine setup is required to build or ship the KB.
main.go Entry point + CLI routing
cmd/
install.go Install (TUI + non-interactive modes)
update.go Update with backup, restore, list-backups
doctor.go Doctor (thin delegate to internal/reports)
registry.go Registry (thin delegate to internal/reports)
internal/
agents/
adapter.go Multi-agent Adapter interface
claude.go codex.go Per-agent implementations
opencode.go generic.go
gemini.go cursor.go windsurf.go
registry.go All() / ByID() factory
backup/backup.go Snapshot/Restore + manifest, keep-latest-5 GC
updater/updater.go Pure Run(Options) → Report (CLI + TUI share it)
reports/ Writer-based doctor + registry renderers
skillregistry/registry.go Parse SKILL.md / command frontmatter
skills/skills.go Symlink helpers
tui/
model.go Bubbletea model + screen state machine
welcome.go Welcome screen calqued from gentle-ai
logo.go Braille-art duck + yellow gradient
styles.go Lipgloss palette (Rose Pine + duck accents)
skills/ Claude Code skills (symlinked to ~/.claude/skills/)
claude/commands/ Slash commands (symlinked to ~/.claude/commands/)
claude/agents/ Claude subagents (symlinked to ~/.claude/agents/, Claude only)
.github/workflows/
release.yml Tag push → goreleaser → binaries + brew + scoop
ci.yml go vet + go build on push/PR
pr-check.yml 400-line PR review-budget check
.goreleaser.yaml Multi-platform build + brews/scoops publish
install.sh Curl-pipe installer (downloads release binary)
doctor.sh Bash dependency check (claude CLI, node, pnpm)
docs/ Notes on adding skills and commands
See docs/adding-skills.md.