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

tanren

v0.1.22

Published

Technical Agent for Nurturing & Reinforcing Engineering Navigation

Downloads

2,873

Readme

tanren

Technical Agent for Nurturing & Reinforcing Engineering Navigation

AI コーチと壁打ちを重ね、その履歴をマルチエージェントが軸ごとに解析して、あなたの実力を可視化する CLI です。

AI と対話して思考を言語化し(壁打ち)、たまった履歴を tanren report で解析する。強み・弱み・次のアクション・5 段階スコアが軸ごとに出て、続けるほどスコアの推移として成長が見えます。壁打ち → 解析 → 次に取り組む のループを回すためのツールです。

名前は鍛錬から。日々の反復で力を鍛えていく、という意味を込めています。

なぜ tanren か

ひとりで開発していると、自分の思考について構造化されたフィードバックをもらう機会はほとんどありません。自分の判断が良かったのか、設計のどこが弱いのか、半年前より伸びているのか——どれも自分では測りにくい。普通の AI チャットは質問に答えてはくれますが、あなたの考えを掘り下げてはくれないし、上達を記録してもくれません。

tanren はそこを埋めます。

壁打ちのコーチは「他に選択肢は?」「その設計が破綻するのはどんな時?」と軸に沿って問い返し、あなたに判断や設計の根拠を言語化させます。会話に残った思考の跡を、軸ごとの専門エージェントが解析し、忖度のない評価とルーブリックに基づくスコアにします。前回提示した次のアクションは次の解析で進捗を見られるので、やりっぱなしになりません。

スコアは「その回の話題」に振り回されないよう、扱われなかった軸は前回点を据え置きます。だから推移は成長そのものを映します。tanren が目指すのは、自分の伸びを続けて見られるようにすることです。

必要なもの

  • Node.js 18 以上
  • AI プロバイダー(いずれか)

クイックスタート

インストール

npm install -g tanren

初期設定

tanren setup

AI プロバイダーを選びます(初回は ask / report 実行時に自動で案内されます)。

壁打ちして解析する

引数なしで実行するとメニューから選べます。

$ tanren

? tanren
  ❯ 💬 壁打ち
    📊 実力解析
    🎯 次のアクション
    📚 レポート履歴
    🔧 セットアップ

まずは壁打ちで思考を言語化します。

$ tanren ask

💬 tanren 壁打ちセッション
終了するには Ctrl+C

あなた: 認証基盤に JWT とセッションのどちらを選ぶか迷ってる
コーチ: いいテーマですね。まず、他に選択肢は検討しましたか?
        そして、その2つを比べたとき何を最優先に置いていますか?

何回か壁打ちしたら、実力を解析します。

tanren report

軸ごとに専門エージェントが履歴を読み、強み・弱み・次のアクション・スコアを返します。スコアの推移はあとから振り返れます。

tanren history     # スコアと推移の一覧
tanren history 2   # レポート #2 の詳細(前回比つき)
tanren actions     # 次に取り組むべきこと

仕組み

tanren のループは 4 つのコマンドでできています。

  • ask — コーチは解析の軸を意識して問い返し、あなたに判断・設計の根拠を言語化させます。一方的に教えるのではなく、証拠を引き出す壁打ちです。
  • report — 軸ごとに分かれた専門エージェントが履歴を解析します。前回レポート以降の新しい壁打ちだけを対象にし、強み・弱み・次のアクションと、ルーブリックに基づく 5 段階スコアを出します。前回の次アクションへの進捗も評価します。
  • history — 軸ごとのスコアと推移、前回比を表示します。前回と点が同じ軸は「前回と同じ」と示します。
  • actions — 最新レポートの次アクションを軸ごとに一覧します。

解析は 軸(axis) という単位で行われます。各軸は key(内部 ID)/ label(表示名)/ focus(その軸で何を見るか)を持ち、コーチの掘り方と解析の観点の両方を駆動します。既定では「技術的判断・トレードオフ思考」と「設計力・アーキテクチャ」の 2 軸です。

主なコマンド

| コマンド | 説明 | |---|---| | tanren | メニューから操作を選ぶ | | tanren ask | AI コーチと壁打ちする | | tanren report | 壁打ち履歴から実力を軸ごとに解析する | | tanren history [id] | 解析レポートの一覧 / 詳細とスコア推移を見る | | tanren actions | 次に取り組むべきことを表示する | | tanren setup | AI プロバイダーを設定する |

設定とカスタマイズ

解析する軸

評価する能力軸は ~/.tanren/axes.yaml で編集できます。label(表示名)と focus(その軸で何を見るか)を書き換えると、次の askreport から反映されます。

axes:
  - key: decision
    label: 技術的判断・トレードオフ思考
    focus: 選択肢を比較し、根拠を持って意思決定する力に注目する。
  - key: review
    label: コードレビュー力
    focus: 指摘の的確さ、優先順位づけ、伝え方に注目する。

key は過去レポートとの照合に使うため、既存の軸はそのまま残すのが無難です。

データの保存先

すべて ~/.tanren/ 配下の YAML に保存されます。外部に送信されるのは、選んだ AI プロバイダーへの解析・対話リクエストのみです。

~/.tanren/
├── config.yaml     # プロバイダー設定
├── sessions.yaml   # 壁打ち履歴
├── reports.yaml    # 解析レポート
└── axes.yaml       # 解析する能力軸

開発・設計

コードの構造・設計判断・既知の割り切りは ARCHITECTURE.md にまとめています。

ライセンス

MIT — 詳細は LICENSE を参照してください。