sky-cli-tools
Skill8 starsChanged 6 days agoMITView on GitHub
Komut satırı aracı geliştirme (Node/TS ağırlıklı, Python/Go notlarıyla): argüman ayrıştırma (commander, citty, yargs), etkileşimli istemler (@clack/prompts), renkli ve okunur çıktı, spinner ve ilerleme çubukları, yapılandırma dosyası ve env, hata mesajları ve çıkış kodları, --json çıktı ve betiklenebilirlik, Ink ile TUI, npx ile çalıştırma, tek binary dağıtım, otomatik tamamlama ve güncelleme bildirimi. "CLI aracı yap", "komut satırı uygulaması", "terminal aracı" dendiğinde kullan.
In this repository213 other files it gives its agents.
- sky-3dSkill
- sky-a11y-auditorSkill
- sky-a11ySkill
- sky-ai-agentsSkill
- sky-ai-evalSkill
- sky-aiSkill
- sky-ai-uxSkill
- sky-algorithmsSkill
- sky-androidSkill
- sky-angularSkill
- sky-ansibleSkill
- sky-api-reviewerSkill
- sky-architectSkill
- sky-architecture-docsSkill
- sky-architecture-patternsSkill
- sky-astroSkill
- sky-audit-historySkill
- sky-authSkill
- sky-auth-uxSkill
- sky-awsSkill
- sky-azureSkill
- sky-baasSkill
- sky-backend-apiSkill
- sky-botsSkill
- sky-brandSkill
- sky-browser-apisSkill
- sky-browser-extensionSkill
- sky-browser-qaSkill
- sky-builderSkill
- sky-build-fixerSkill
- sky-cachingSkill
- sky-canvasSkill
- sky-changelogSkill
- sky-chat-productSkill
- sky-checkout-uxSkill
- sky-claude-codeSkill
- sky-claude-mdSkill
- sky-cloudflareSkill
- sky-cmsSkill
- sky-codebase-mapperSkill
- sky-code-reviewerSkill
- sky-code-reviewSkill
- sky-code-styleSkill
- sky-colorSkill
- sky-cppSkill
- sky-criticSkill
- sky-cryptoSkill
- sky-css-modernSkill
- sky-dashboardSkill
- sky-data-analysisSkill
- sky-data-pipelinesSkill
- sky-dataSkill
- sky-datavizSkill
- sky-date-timeSkill
- sky-db-reviewerSkill
- sky-debuggerSkill
- sky-debugSkill
- sky-deploySkill
- sky-designerSkill
- sky-design-systemSkill
- The first 60 shown.
The file
Files
Sky · CLI Araçları
İskelet (Node + TS)
#!/usr/bin/env node
import { Command } from "commander";
import * as p from "@clack/prompts";
import pc from "picocolors";
const program = new Command().name("sky-init").description("Yeni Sky projesi oluşturur").version(pkg.version);
program
.argument("[dir]", "hedef klasör")
.option("-t, --template <name>", "şablon (next|vite)")
.option("--json", "makine okunur çıktı")
.option("-y, --yes", "soruları varsayılanla geç")
.action(async (dir, opts) => {
p.intro(pc.bgBlue(pc.white(" sky-init ")));
const name = dir ?? (opts.yes ? "my-app" : await p.text({ message: "Proje adı?", placeholder: "my-app", validate: (v) => (v ? undefined : "Ad gerekli") }));
if (p.isCancel(name)) { p.cancel("İptal edildi."); process.exit(130); }
const template = opts.template ?? (await p.select({ message: "Şablon", options: [{ value: "next", label: "Next.js" }, { value: "vite", label: "Vite + React" }] }));
const s = p.spinner(); s.start("Dosyalar oluşturuluyor");
await scaffold(String(name), String(template));
s.stop("Hazır");
p.outro(`Sonraki adım: ${pc.cyan(`cd ${name} && pnpm dev`)}`);
});
program.parseAsync().catch((e) => { console.error(pc.red(`✖ ${e.message}`)); process.exit(1); });package.json: "bin": { "sky-init": "./dist/cli.js" }, "type": "module"; tsup ile tek dosya bundle.
İnsanların sevdiği CLI özellikleri
- Etkileşimli ama atlanabilir: her soru bir bayrakla da verilebilir (
--template next),-yile varsayılanlar — CI'da çalışır. - İyi hata mesajı: ne oldu + nasıl düzelir + (varsa) dokümana bağlantı:
✖ "sky.config.json" bulunamadı. Oluşturmak için: sky init - Renk, ama
NO_COLORve TTY değilse renksiz (picocolors bunu yapar);--jsonile makine çıktısı (stdout'a yalnızca veri, loglar stderr'e). - Spinner/ilerleme yalnızca TTY'de; uzun işlerde ne yapıldığını söyle.
--helpörneklerle (program.addHelpText("after", "\nÖrnekler:\n $ sky-init my-app -t next")),--version.- "Bunu mu demek istedin?" (yanlış komut adında öneri — commander yapar).
- Yıkıcı işlemde onay (
--forceile atlanır),--dry-runile önizleme. - Güncelleme bildirimi (
update-notifierbenzeri, günde bir kez kontrol). - Kabuk otomatik tamamlama (
tabtab/omelette, Go'da cobra yerleşik).
Çıkış kodları
0 başarı, 1 genel hata, 2 yanlış kullanım (argüman), 130 Ctrl+C. Betiklerde zincirlenebilsin.
Yapılandırma
Öncelik: bayrak > env (SKY_TOKEN) > proje dosyası (sky.config.ts/json, cosmiconfig/c12 ile) > kullanıcı dosyası (~/.config/sky/config.json, XDG) > varsayılan.
Sırları kullanıcı yapılandırmasında 0600 izinle veya işletim sistemi anahtarlığında (keytar) sakla.
TUI (tam ekran)
Ink (React ile terminal arayüzü) — paneller, listeler, canlı güncellenen tablolar. Go'da Bubble Tea, Python'da Textual.
Dağıtım
npx sky-init/pnpm dlx— kurulumsuz çalıştırma (en kolay).- Tek binary: Bun
bun build --compile, Node SEA, ya da Go/Rust ile yaz (hızlı açılış, bağımlılıksız). Homebrew tap, Scoop, GitHub Releases. - Python: Typer +
uv tool install/ pipx. Go: cobra + goreleaser.
Test
Komutları fonksiyon olarak çağırıp test et (I/O'yu enjekte et); uçtan uca: execa ile süreci çalıştır, stdout/çıkış kodunu doğrula; geçici klasörlerde dosya üretimi.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

