npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@einja/dev-cli

v0.1.21

Published

Einja CLI - .claude設定とテンプレート同期をnpxでインストール

Downloads

1,826

Readme

@einja/dev-cli

Claude Code用の.claude設定ディレクトリをnpxでインストールできるCLI。

クイックスタート

npx @einja/dev-cli init

インストール

# npx(推奨)
npx @einja/dev-cli init

# グローバルインストール
npm install -g @einja/dev-cli
@einja/dev-cli init

コマンド

init

.claudeディレクトリをセットアップします。

npx @einja/dev-cli init

オプション:

| オプション | 説明 | |-----------|------| | -f, --force | 上書き確認をスキップ | | --dry-run | 実行内容をプレビュー | | --no-backup | バックアップを作成しない |

自動追加されるnpm scripts:

init 実行時に package.jsonscripts に以下が自動追加されます:

{
  "scripts": {
    "task:loop": "npx @einja/dev-cli task:loop",
    "einja:sync": "npx @einja/dev-cli sync"
  }
}

これにより、以下のコマンドが使用可能になります:

  • pnpm task:loop 123 - タスクループ実行
  • pnpm einja:sync - テンプレート同期

sync

テンプレートから更新を同期します。

# 全カテゴリを同期
npx @einja/dev-cli sync

# 特定カテゴリのみ同期
npx @einja/dev-cli sync --only commands,agents
npx @einja/dev-cli sync --only hooks

オプション:

| オプション | 説明 | |-----------|------| | -o, --only <categories> | 同期するカテゴリをカンマ区切りで指定 | | -d, --dry-run | 実際の変更を行わず、差分のみ表示 | | -f, --force | ローカル変更を無視してテンプレートで上書き | | -y, --yes | 確認プロンプトをスキップ | | --no-backup | 変更前にバックアップを作成しない |

同期可能なカテゴリ:

  • commands - Claude Code コマンド
  • agents - エージェント定義
  • skills - スキル定義
  • hooks - Git Hooks
  • docs - ステアリングドキュメント
  • env - 環境設定ファイル(.envrc

マーカーによる部分同期:

ファイルには、同期動作を制御するマーカーがあります:

  • @einja:managed - 常にテンプレート版で上書き(共通ルール)
  • @einja:seed - 初回のみ追加、以降はローカル編集を保持(プロジェクト固有設定)
  • @einja:excluded - テンプレートのみに存在し、syncでコピーされない(テンプレート専用設定)

詳細は マーカー仕様書 を参照してください。

JSONマージ設定:

.einja-sync.jsonjsonPathsを設定することで、JSONファイルのマージ動作を制御できます:

{
  "version": "1.0.0",
  "lastSync": "2024-01-11T00:00:00Z",
  "templateVersion": "1.0.0",
  "files": {},
  "jsonPaths": {
    "managed": {
      "package.json": ["scripts.dev", "scripts.build", "scripts.lint"]
    },
    "seed": {
      "package.json": ["scripts.custom"]
    }
  }
}
  • managed パス: 常にテンプレート値で上書き
  • seed パス: ローカルに存在しない場合のみテンプレート値をコピー
  • その他: ローカル優先(ユーザー追加分を保持)

注意: jsonPaths設定はcreate-einja-app addコマンドと共通です。

task:loop

GitHub Issueのタスクを自動実行します(Claude Code経由)。

# pnpm scripts経由(推奨)
pnpm task:loop 123
pnpm task:loop 123 --max-group 1.3

# npx直接実行
npx @einja/dev-cli task:loop 123

オプション:

| オプション | 説明 | |-----------|------| | -m, --max-group <number> | 最大タスクグループ番号 | | -b, --branch <name> | ベースブランチ |

前提条件:

  • gh CLI がインストール済み(GitHub Issue操作に必要)
  • Vibe-Kanbanが起動している(npx vibe-kanban

配布内容

Einja ATDDワークフロー構成(Next.js、Vibe-Kanban統合)を配布します。

.claude/
├── settings.json
├── agents/
│   ├── specs/           # 仕様書生成 (3)
│   ├── task/            # タスク実行 (6)
│   └── einja/frontend/  # フロントエンド (3)
├── commands/
│   ├── spec-create.md
│   ├── task-exec.md
│   └── einja-*/         # Einja固有コマンド
├── skills/
│   └── einja-*/         # コーディング規約、設計ガイド
└── hooks/               # Git Hooks (9個)
    ├── biome-format.sh
    ├── typecheck.sh
    └── ...

docs/
├── templates/           # ドキュメントテンプレート
└── steering/            # プロジェクト基本方針

含まれるMCPサーバー設定:

  • codex, context7, playwright, serena, github, vibe_kanban

カスタマイズ

settings.local.json

プロジェクト固有の設定はsettings.local.jsonに記述します。

{
  "permissions": {
    "allow": ["Bash(custom-script:*)"]
  }
}

CLAUDE.md

プロジェクトルートにCLAUDE.mdを作成してプロジェクト固有の指示を追加できます。

開発

# ビルド
pnpm build

# テスト
pnpm test

# 型チェック
pnpm typecheck

前提となるコマンド

サブエージェント(task-qa、task-commit、task-reviewer等)が以下のコマンドの存在を前提としています。

| コマンド | 使用者 | 用途 | |---------|--------|------| | prepush | task-commit | コミット前の品質チェック | | test | task-qa, task-reviewer | ユニットテスト実行 | | lint | task-qa, task-reviewer | Biome lintチェック | | typecheck | task-qa, task-reviewer | TypeScript型チェック | | build | task-qa, task-reviewer | ビルド確認 | | dev | CLAUDE.md | 開発サーバー起動 | | dev:bg | CLAUDE.md | バックグラウンド開発サーバー |

推奨: これらのコマンドがすべて含まれる create-einja-app でプロジェクトを作成してください。

npx create-einja-app my-project

要件

  • Node.js >= 20.0.0

ライセンス

MIT