Fold two overlapping local skills (scripts-shell, shell-scripts-module) into this one, keeping only what it did not already cover. - Add references/environment-model.md: the three-layer .env selector model, why set -a dot-sourcing beats export $(grep|xargs), tracked samples, the no-re-sourcing rule for module readers, and the deployment boundary (repo-presence is not git-tracked is not deployed). - Extend references/taskfile.md with the one-env-driven-task rule (no :default pairs) and composing commands through the task surface. - Add the lifecycle-hook module type to references/module-patterns.md. - Keep this skill's _moduleExampleV1_ naming as canonical; the retired skills' HL_V1_ and double-underscore dialects were not carried over. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
57 lines
2.1 KiB
Markdown
57 lines
2.1 KiB
Markdown
# development-scripts
|
|
|
|
Agent Skill for shell script modules under a repository's `.scripts/` directory — the
|
|
`api/` + `lib/` split, the `--index.sh` bootstrap chain, Taskfile integration, and the shared
|
|
`loggers` and `base` foundation modules.
|
|
|
|
## Layout
|
|
|
|
```text
|
|
development-scripts/
|
|
├── SKILL.md # Entry point — routing, anatomy, naming, runtime flow
|
|
├── references/
|
|
│ ├── module-anatomy.md # Reader, validator, index files, implementations, wrappers
|
|
│ ├── shared-modules.md # loggers and base, and the logging bootstrap rule
|
|
│ ├── taskfile.md # Module and root Taskfile integration
|
|
│ ├── workflows.md # Create, change, validate
|
|
│ ├── module-patterns.md # Module type and dependency decision guide
|
|
│ └── environment-model.md # Layered .env model, samples, shipping into a target repo
|
|
└── assets/
|
|
├── module-example-v1/ # Scaffold to copy for a new module
|
|
├── loggers/ # Working reference implementation
|
|
└── base/ # Working reference implementation
|
|
```
|
|
|
|
## The model
|
|
|
|
```text
|
|
<target-repository>/
|
|
Taskfile.yml
|
|
.scripts/
|
|
<module>/
|
|
api/ # public command wrappers — what users run
|
|
lib/ # implementation functions — what the code calls
|
|
Taskfile.yml # only when exposed through task
|
|
```
|
|
|
|
Commands run from the repository root:
|
|
|
|
```bash
|
|
./.scripts/<module>/api/<command>.sh --dry-run
|
|
task <module-alias>:<task-name> -- --dry-run
|
|
```
|
|
|
|
Every source path is repository-root-relative, and the bootstrap chain — reader, then
|
|
validator, then API index — guarantees an implementation function sees a fully-prepared
|
|
environment.
|
|
|
|
## Deploy
|
|
|
|
```bash
|
|
cd ../skill-manager/scripts
|
|
task deploy -- --skill-dir="$(cd ../../development-scripts && pwd)"
|
|
```
|
|
|
|
Built with the `skill-manager` skill, following the
|
|
[agentskills.io specification](https://agentskills.io/specification).
|