agentsclimarketplace

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

Install
npx -y skills add dsisnero/crystal_forge --skill initialize-crystal-porting-project

Assembled 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:

  1. upstream repository URL
  2. optional upstream subdirectory
  3. port name if it should differ from the repo name
  4. submodule path if it should differ from vendor/<port-name>
  5. whether to track main or 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.yml should include ameba as a development dependency.
  • Add runtime dependencies only when parity work actually needs them.
  • Reuse the shared .ameba.yml baseline from crystal-forge-setup-project.

3. Ensure standard repo commands

Expose at least:

  • install
  • update
  • format
  • lint
  • test
  • clean

For Crystal repos, prefer format, ameba, and crystal spec gates.

4. Add docs baseline

Create or update:

  • README.md with clear upstream attribution and pinned source revision
  • AGENTS.md with 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:

  1. upstream checkout exists at the agreed ref
  2. baseline quality gates are present
  3. README and AGENTS document the source of truth
  4. plans/inventory/* exists
  5. 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

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.

Keep looking

Skills are one crate of 326,871. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.