Skip to main content

development

Guides ccusage monorepo development. Use when editing packages, docs, shared configuration, bundled CLI packaging, dependencies, exports, or validation commands.

معلومات المصدر

المستودع
ryoppippi/ccusage
آخر نشاط في المصدر
٨ يونيو ٢٠٢٦ في ٢٣:٢٩
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
١٥٬٩٠٧
التفرعات
٦٣٨

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
3 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
development
description
Guides ccusage monorepo development. Use when editing packages, docs, shared configuration, bundled CLI packaging, dependencies, exports, or validation commands.
# ccusage Development ## Repository Shape This is a monorepo. Check the nearest package-specific `AGENTS.md` before editing a package: - `apps/ccusage/AGENTS.md` - main Claude Code usage CLI and library - `docs/AGENTS.md` - VitePress documentation site The production CLI implementation is Rust-first under `rust/crates/ccusage`. The `apps/ccusage` package now mainly provides npm metadata, a TypeScript bin launcher, generated schema artifacts, benchmarks, and release packaging. The canonical user-facing command is `ccusage` with agent subcommands: ```sh ccusage daily ccusage codex daily ccusage opencode daily ccusage amp daily ccusage pi daily ``` Standalone agent wrapper packages have been removed. Prefer `ccusage <agent> ...` in docs, tests, examples, and new behavior, and do not reintroduce wrapper commands such as `ccusage-codex`, `ccusage-opencode`, `ccusage-amp`, or `ccusage-pi`. Agent implementations live in the Rust CLI unless the work is specifically about the remaining TypeScript package surface. Treat package runtime libraries as bundled assets: add dependencies to each package's `devDependencies` unless the user explicitly asks otherwise. ## Common Commands Use root commands unless a narrower package command is more appropriate. Read `references/commands.md` for root and main CLI command examples. `LOG_LEVEL` controls logging verbosity from `0` silent through `5` trace. ## Environment and Tooling Read `references/environment-and-validation.md` for direnv, tool management, generated skill target rules, and post-change checks. ## Code Style - For Rust CLI work, use the `rust` skill before editing `rust/crates/**`, native packaging behavior, or Rust pricing embedding. Use `profile` for Rust performance work. - Keep Rust modules small and responsibility-focused. Prefer `pub(crate)` over broader visibility, avoid unnecessary `String` cloning in hot paths, and put unit tests beside the module they exercise. - For TypeScript package/tooling code, use the `typescript` skill before editing. Keep `satisfies` and `as const satisfies` guidance there instead of mixing TypeScript details into Rust workflow rules. - Only export constants, functions, and types used by other modules. - Keep internal-only files and helpers private where possible. - Dependency additions go in `devDependencies` for bundled/private packages. ## Post-Change Workflow Read `references/environment-and-validation.md` for formatting, typecheck, and test commands. ## Performance and CLI Output Use `profile` for native CLI performance optimization, Rust profiling, hyperfine A/B comparisons, branch-vs-main profiling, TypeScript launchers, benchmarks, and packaging scripts. Use the `cmux-debug` skill when validating terminal rendering, responsive tables, long-running CLI output, or output that depends on real terminal geometry. ## Commit and PR Names Use the `commit` skill for commit structure, Conventional Commits, scope selection, and detailed commit message requirements. Use the `create-pr` skill after opening a PR or pushing follow-up commits so AI and human review comments are requested, inspected, answered, and incorporated through small revertible commits.
عرض على GitHub