Initialize crystal porting project
Skill dsisnero/crystal_forge/skills/initialize-crystal-porting-project
Initialize a Crystal porting repo with upstream source checkout, baseline gates, and source-of-truth documentation. Use when starting a new port or retrofitting an existing Crystal repo for structured parity work.From its SKILL.md
npx -y skills add dsisnero/crystal_forge --skill initialize-crystal-porting-projectAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.3 KB, 510 tokens by cl100k_base, as published. Nobody here has run it
Initialize Crystal Porting Project
Use this skill to create the project baseline before real porting starts.
Inputs
Collect the minimum missing facts:
- upstream repository URL
- optional upstream subdirectory
- port name if it should differ from the repo name
- submodule path if it should differ from
vendor/<port-name> - whether to track
mainor pin a tag/commit
If no upstream checkout exists, explicitly ask whether the source should be added as a git submodule and where the source-of-truth lives.
Workflow
1. Add upstream checkout
Prefer a git submodule:
git submodule add -b main <source_url> vendor/<port-name>
Pin a tag or commit immediately if that is the agreed policy.
2. Ensure Crystal baseline tooling
shard.ymlshould includeamebaas a development dependency.- Add runtime dependencies only when parity work actually needs them.
- Reuse the shared
.ameba.ymlbaseline fromcrystal-forge-setup-project.
3. Ensure standard repo commands
Expose at least:
installupdateformatlinttestclean
For Crystal repos, prefer format, ameba, and crystal spec gates.
4. Add docs baseline
Create or update:
README.mdwith clear upstream attribution and pinned source revisionAGENTS.mdwith source-of-truth and contributor workflow- missing docs under
docs/
Do not replace useful local content wholesale; merge with it.
5. Bootstrap the parity plan
./scripts/ensure_parity_plan.sh . <source_path> <language> auto 0
This should establish plans/inventory/* from day one.
6. Verify setup
Run:
./scripts/verify_initialized_project_baseline.sh <project_root>
Completion
Initialization is complete when:
- upstream checkout exists at the agreed ref
- baseline quality gates are present
- README and AGENTS document the source of truth
plans/inventory/*exists- the baseline verifier passes
Route next
- implementation work:
porting-to-crystal - inventory and drift checks:
cross-language-crystal-parity - dependency selection:
find-crystal-shards
What ships with it: 1 file
3.4 KB alongside SKILL.md, 1 of them executable
scripts/
- verify_initialized_project_baseline.shruns3.4 KB
Gives 0 of the 12 instructions most project setup skills give in 510 tokens
Counted across 999 of the 1,637 authors here whose files we hold, read 2026-08-07
- Ask one question at a timein 29 of 999, across 28 files
- Detect the package manager from lockfilesin 28 of 999, across 9 files
- Present findings to the userin 26 of 999, across 5 files
- Explore current repo statein 24 of 999, across 3 files
- Update the agent skills block in place if it existsin 24 of 999, across 3 files
- Install husky lint-staged and prettierin 23 of 999, across 4 files
- Create the lintstagedrc filein 22 of 999, across 3 files
- Commit all changed filesin 22 of 999, across 3 files
- Run lint-staged to verify it worksin 22 of 999, across 3 files
- Create the husky pre-commit filein 21 of 999, across 2 files
- Create a prettierrc file if missingin 21 of 999, across 2 files
- Initialize huskyin 21 of 999, across 2 files
Said here and by no other author read
- ask for the upstream repository url
- add the upstream source as a git submodule
- pin a tag or commit immediately
- include ameba as a development dependency
- reuse the shared ameba config
- expose standard repo commands
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.