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

@bossmode/hermes-ai-project-manager

v0.1.63

Published

Standalone Hermes AI Project Manager pack powered by the Close-the-Loop Engine.

Readme

Hermes AI Project Manager

A local project-control pack for Hermes. It tracks projects, commitments, owners, assignment messages, status evidence, reminders, escalations, and daily digests from the work your business creates every day.

Transcript ingestion is optional. You can start projects and tasks directly from Hermes without a meeting transcript. During guided setup, Hermes asks which transcript source the customer uses. Fathom is the native v1 connector; Fireflies/Otter/Granola/Zoom/Read.ai and other sources can still enter through local file-drop, manual paste, Google Drive, or Gmail fallback until their native connectors are added.

Customer experience

The customer talks to Hermes. Hermes runs the CLI behind the scenes.

Use natural prompts like:

Finish PM setup one question at a time.
Start a project called Client Delivery Sprint.
Review approvals, send approved assignments, and open my board.
Run my daily PM check.
Chase anything late and tell me what is blocked.
Update the PM pack.

After install, Hermes should treat project/task/goal/follow-up/status language as AI Project Manager work by default. The customer should not have to prefix every prompt with “Use the AI Project Manager.” If the customer says “don’t track this” or “brainstorm only,” Hermes should not create ledger records.

For multi-step work, Hermes runs a Project Detection Gate before executing. Requests such as redesigns, launches, migrations, setup work, refactors, workflows, multi-surface code/UI/test/deploy changes, and ambiguous medium-scope “make this better” work are treated as projects first: Hermes creates/updates the project, proposes phases, asks only high-leverage PM questions, and tells the customer where to view the project before implementation starts. Tiny one-step edits remain quick tasks.

The hermes-pm commands below are the engine interface for Hermes and advanced operators. They are not the default customer workflow.

Install

Recommended buyer handoff:

hermes -z 'Install the Hermes AI Project Manager Pack for me. Run the installer from my receipt, finish setup one question at a time, start my first project when I am ready, and open the board.'

Fallback direct install:

npx -y @bossmode/hermes-ai-project-manager@latest install --license <license-from-checkout> --yes

If a customer gives Hermes only the raw pm_live_... token from the email, Hermes should still run the installer internally with --license <token> and should not ask for the token again. The installer also accepts the token as a positional fallback after install, but the explicit --license command remains the clearest support path.

For custom non-interactive install:

npx -y @bossmode/hermes-ai-project-manager@latest install \
  --license <license-from-checkout> \
  --yes \
  --name "My AI Project Manager" \
  --timezone "America/New_York" \
  --team "Alex Rivera:operations:alex:@alex,Jordan Lee:implementation:jordan:@jordan"

The installer creates:

  • Hermes skill: ~/.hermes/skills/hermes-ai-project-manager/SKILL.md
  • Project ledger: ~/.hermes/project-manager/ledger.db
  • Local config: ~/.hermes/project-manager/config.json
  • Local license cache: ~/.hermes/project-manager/license.json
  • Transcript inbox: ~/.hermes/project-manager/inbox
  • Project board: ~/.hermes/project-manager/board/index.html
  • Runtime: ~/.hermes/project-manager/runtime
  • Customer command shim: ~/.local/bin/bossmode for bossmode pm ...
  • Advanced CLI wrapper: ~/.local/bin/hermes-pm
  • Starter workflows: ~/.hermes/project-manager/workflows

After install, stay in Hermes and say:

Finish PM setup. Ask me one question at a time.

Then:

Start a project called Client Delivery Sprint.

Updates

Future pack improvements are designed to be pulled in by Hermes, not by making the customer manage npm manually. Ask Hermes:

Update the PM pack.

Hermes should run bossmode pm update internally. hermes-pm update remains a backward-compatible advanced alias. If the installed runtime is too old to know either command, Hermes should run this fallback internally:

npx -y @bossmode/hermes-ai-project-manager@latest install --yes

The update path preserves the local ledger, license cache, scheduler config, transcript sources, work surface, board data, and setup profile.

To verify a customer's runtime, Hermes can run:

bossmode pm version status

The hounding/autopilot safety floor is @bossmode/[email protected] with @bossmode/[email protected]. If version status says update_required, the scheduler stops, runs the safe self-update when allowed, and resumes on the next scheduled run from the refreshed runtime. Fresh installs always use @latest.

After fresh install or update, PM Engine also runs a safe Context Radar scan once. It looks for likely local repos/project folders through metadata only and queues supervised project candidates; it does not read full source files or secrets.

License activation

Checkout issues each buyer a unique pm_live_... license token. It is not a shared password: activation sends the token plus this machine's device fingerprint to the license server, stores only a redacted local cache, and lets the server reject expired, revoked, wrong-product, unpaid checkout, or over-activation tokens.

The Stripe path is:

  1. Checkout session or Payment Link carries product metadata: product_key=hermes-ai-project-manager.
  2. After payment, the license session endpoint verifies the paid Stripe session plus buyer email.
  3. The buyer receives a unique Hermes handoff plus a fallback direct installer:
npx -y @bossmode/hermes-ai-project-manager@latest install --license <license-from-checkout> --yes

If the pack is already installed, ask Hermes to activate/check the license. Advanced fallback:

hermes-pm license activate --license <license-from-checkout>
hermes-pm license status

If the license server is temporarily unreachable after a successful activation, the local cache allows short offline use. Test/offline activations are available only when explicitly enabled for development.

Guided setup

Hermes walks the operator through setup conversationally. Follow-up timing accepts human modes like relaxed, standard, active, aggressive, or weapon PM; the old numeric format still works for advanced operators:

hermes-pm onboarding start
hermes-pm onboarding answer --step workspace_name --value "Acme Delivery Ops"
hermes-pm onboarding answer --step operating_mode --value "team"
hermes-pm onboarding answer --step team_roster --value "Alex Rivera:operations:alex:@alex,Jordan Lee:delivery:jordan:@jordan"
hermes-pm onboarding answer --step work_surface --value "local/manual-copy"
hermes-pm onboarding answer --step transcript_source --value "Fathom"
hermes-pm onboarding answer --step reminder_rules --value "weapon PM"
hermes-pm onboarding answer --step first_project --value "Client Delivery Sprint"
hermes-pm onboarding finish

The setup flow still treats transcripts as optional. The first project can be created directly from the setup conversation.

For a solo operator, answer solo for operating mode. Solo setup does not require a roster, Slack, or transcripts:

hermes-pm onboarding answer --step operating_mode --value "solo"
hermes-pm onboarding answer --step reminder_rules --value "standard"
hermes-pm onboarding answer --step first_project --value "Launch a simple offer page by Friday"
hermes-pm onboarding finish

Solo mode creates an execution bench: You, Hermes, Agent/Tool, Contractor TBD, and Parking Lot. Parking Lot work stays visible but does not trigger reminders/escalations.

Project board

For a visual view of active work, ask Hermes:

Open my project board.

Advanced fallback:

hermes-pm board open

The default board is an interactive dark BossMode Project Manager Control Center. Team mode uses Needs Approval, To Assign, In Progress, Needs Follow-up, Blocked, and Done. Solo mode uses Ideas, Planned, Do Next, In Progress, Waiting / Blocked, Needs Decision, and Done. It reads from and writes through the local ledger, so it shows projects started from Hermes conversations, board forms, Slack/message evidence, recurring workflows, task imports, scheduled check-ins, and optional transcripts.

The board can create projects/tasks, define scope, record decisions, approve routine assignments, dispatch, run risk scans, generate weekly briefs, create hours-back receipts, and mark work done/blocked with evidence. Ask Hermes:

Open the interactive project board so I can add projects and tasks visually.

Hermes will run the local interactive board server. Static snapshots are still available:

hermes-pm board export

The interactive board writes through the same Close-the-Loop Engine. It does not bypass approvals, assignment, dispatch, reminders, escalations, or evidence-based completion.

What it does

  • Captures projects and tasks from direct instructions.
  • Supports Solo, Team, and Hybrid operating modes.
  • Structures vague solo goals into outcome, scope, smallest useful version, milestones, tasks, risks, decisions, and first next action.
  • Asks for PM-grade success criteria when useful: what done means, what benchmark proves progress, when to check in, and what recovery path to use if work slips.
  • Creates projects manually without transcripts.
  • Creates one-off tasks manually without transcripts.
  • Auto-detects project-shaped requests before execution and runs PM intake first.
  • Assigns/chases through local/manual-copy or any configured Hermes work surface such as Slack, Telegram, Discord, email, or SMS.
  • Sends safe self-hounds to the operator through the configured Hermes work surface automatically when the scheduler runs; third-party delegation stays supervised.
  • Establishes a PM kickoff contract for real projects: outcome, success metric/KPI, owner, next milestone, cadence, and kill/park criteria.
  • Runs scheduled project-level check-ins against milestones/KPIs so Hermes keeps asking for status instead of waiting for the operator to remember.
  • Routes chasing to the responsible bottleneck — task owner, project owner, decision owner, dependency/vendor owner, reviewer/approver, stakeholder, or operator when the safe route is unknown.
  • Records completion/blocker evidence before changing task status.
  • Scans for risks before deadlines slip: silent owners, stale tasks, blockers, decision backlogs, and due-date compression.
  • Drafts chase nudges and promotes safe operator hounds without manual approval; third-party chase nudges stay in review.
  • Generates Weekly Operator Briefs, Friday Wraps, Exec One-Pagers, and hours-back receipts from ledger evidence.
  • Records decision/rationale memory so “why did we decide X?” has an evidence-backed answer.
  • Accepts optional transcript/meeting-note ingestion.
  • Watches an optional Super Second Brain PM Radar feed and safe local repo/project metadata for unreported projects, goals, progress, tasks, loose commitments, decisions, risks, duplicates, stale items, and SOP opportunities.
  • Polls configured Google Workspace transcript inboxes when available.
  • Resolves owners from names, roles, aliases, and Slack handles.
  • Queues assignments, reminders, escalations, digests, clarification requests, and operator hounds.
  • Keeps a local SQLite ledger as the source of truth.
  • Exports local data for migration or backup.

Inputs

The pack can track work from:

  • direct Hermes conversations
  • manual project starts
  • manual task creation
  • Slack/message status evidence
  • recurring workflow/SOP triggers
  • scheduled check-ins
  • task-tool imports/status events
  • optional transcript paste/file/canonical JSON
  • Google Docs/Drive/Gmail transcript inboxes
  • optional Super Second Brain PM Radar feed from Obsidian/AI chat memory
  • safe local project/repo metadata scan for untracked projects

Transcripts are one input path, not the project model.

Project Detection Gate

Hermes should treat multi-step requests as projects before execution. Examples:

  • “Redesign homepage, keep core elements, match other pages, run dev server and show me.” → project.
  • “Set up migration, test suite updates, rollout plan, and docs.” → project.
  • “Fix typo in one button label.” → quick task.

Advanced fallback:

bossmode pm project classify --text "Redesign homepage, keep core elements, match other pages, run dev server and show me."

Context Radar with Super Second Brain

If the customer also installs the Super Second Brain / AI memory pack, AI Project Manager can watch a PM Radar feed that Second Brain writes from Obsidian and AI chat memory. PM Engine also has a safe local Context Radar that looks at repo/project folder metadata to find likely projects not yet in the ledger. This is not blind vault scraping and it does not let notes or files mutate the ledger. It creates supervised findings under Context Radar.

Use it for:

  • undefined projects or goals the user brainstormed but never created,
  • undocumented progress from Codex/Claude/AI work sessions,
  • loose commitments and missing next actions,
  • decisions/rationale that should be remembered,
  • risks/blockers, duplicate/stale work, and SOP opportunities.

Ask Hermes:

Connect my Super Second Brain radar feed and scan for loose ends.

Advanced fallback:

hermes-pm second-brain configure --feed ~/.hermes/second-brain/pm-radar/feed.jsonl
hermes-pm context-radar scan
hermes-pm context-radar list

Every finding is approval-gated. The ledger remains the source of truth; Second Brain and local project metadata are context/evidence only.

First project without a transcript

Customer prompt:

Start a project called Client Delivery Sprint.
Add two tasks:
1. Draft delivery plan — owner Alex — due 2026-05-01
2. Build implementation checklist — owner Jordan — due 2026-05-02
Then review approvals, send approved assignments, and open the board.

Solo structuring prompt:

Structure this project: launch a simple offer page by Friday. Give me the smallest useful version and today's first next action.

Advanced CLI fallback:

hermes-pm project structure --goal "launch a simple offer page" --just-create --due 2026-05-01

Advanced CLI fallback:

hermes-pm project start \
  --title "Client Delivery Sprint" \
  --task "Draft delivery plan|alex|2026-05-01" \
  --task "Build implementation checklist|jordan|2026-05-02"

Create a one-off task:

hermes-pm task create \
  --title "Prepare weekly project status update" \
  --owner alex \
  --due 2026-05-03

Check status internally:

hermes-pm status

Dispatch queued messages internally:

hermes-pm dispatch

Work surface / chat chasing

Slack is optional. The pack reuses Hermes messaging targets and never asks you to paste Slack tokens into this pack's config. Self-install should use whatever Hermes already has connected, then fall back safely if no external channel exists:

hermes-pm work-surface setup --surface auto
hermes-pm dispatch

If Slack is already connected in Hermes, auto can select Slack. If Telegram is the only connected Hermes channel, auto can use Telegram. If no channel is connected, the board/local fallback still works.

When Telegram is selected, PM Engine can chase the operator there from projects created in the UI, Hermes conversation, or CLI. Scheduled reminders/escalations are dispatched in the same scheduler pass; the user does not need to manually run dispatch for routine self-check-ins.

Advanced Slack-only setup remains available:

hermes-pm work-surface setup --surface slack

Every assignment/reminder/escalation includes the task ID and accepted status replies:

done
blocked: <reason>
eta: YYYY-MM-DD
need help

Reminder/escalation messages also prompt for recovery choices such as do now, reschedule, shrink scope, delegate, block, park, or kill.

If a Slack reply is routed into Hermes, Hermes records it internally with:

hermes-pm ingest message \
  --platform slack \
  --text "done" \
  --from @alex \
  --thread THREAD_ID \
  --message-id MESSAGE_ID

A task is complete only when explicit evidence is recorded. Assigning a task never marks it complete.

Optional transcript ingestion

Save transcript files under the local inbox by default:

cat > ~/.hermes/project-manager/inbox/project-notes.md <<'NOTES'
[Alex Rivera] Prepare onboarding plan by 2026-05-01.
[Jordan Lee] Build delivery checklist by 2026-05-02.
NOTES

hermes-pm ingest transcript --file ~/.hermes/project-manager/inbox/project-notes.md
hermes-pm dispatch

To automate transcript inboxes through Google Workspace, ask Hermes to configure your transcript inbox; advanced fallback:

printf '<fathom-api-key>' | hermes-pm configure transcripts --source fathom-api --api-key-stdin
hermes-pm configure transcripts --source google-drive --folder "AI Project Manager / Transcripts"
hermes-pm configure transcripts --source gmail-label --label "AI Project Manager/Transcripts"
hermes-pm scheduler run transcript-inbox

Any transcript provider that can create a Google Doc, send an email to a label, or save a file can feed the same path.

Task-tool evidence

The local ledger stays canonical. Task tools are read-only evidence sources unless an approval policy says otherwise. Linear is the first reference task-tool source:

hermes-pm sources import --adapter linear --external-id LIN-123 --title "External task title" --status "In Progress"

This records status evidence from the work floor without letting the external tool silently overwrite the project ledger.

Follow-through jobs

Install the always-on scheduler from Hermes when you want background chasing. It uses Hermes cron when available and a macOS LaunchAgent fallback when needed:

hermes-pm scheduler install
hermes-pm scheduler status
hermes-pm scheduler run reminders
hermes-pm scheduler run escalations
hermes-pm scheduler run transcript-inbox
hermes-pm scheduler run digest
hermes-pm scheduler run risk-scan
hermes-pm scheduler run weekly-brief
hermes-pm scheduler run friday-wrap
hermes-pm scheduler run stakeholder-updates
hermes-pm scheduler run hours-receipt
hermes-pm scheduler run patterns
hermes-pm digest
hermes-pm pressure

The daily digest and pressure command use the PM operating format: Shipped, Blocked, No-reply / stale, and Next chase.

Operator artifacts

Use these internally through Hermes:

hermes-pm risk scan
hermes-pm decision record --title "Decision" --rationale "why"
hermes-pm decision ask --query "why did we decide X?"
hermes-pm brief weekly
hermes-pm brief friday
hermes-pm brief exec
hermes-pm stakeholder draft --kind client
hermes-pm receipt generate

These artifacts are evidence-backed by the local ledger. External systems are inputs/projections; they do not overwrite canonical project state without policy and approval.

Supervised Mode

Supervised Mode is on by default. It approval-gates side effects while you build trust in the pack.

If dispatch skips sends because approvals are pending, Hermes should explain them in plain English and ask for an approve/deny decision. Advanced fallback:

hermes-pm approvals review
hermes-pm approvals approve-safe --json
hermes-pm outbox retry-dead-letters --kind reminder,escalation,digest --safe-self-hounds-only --json
hermes-pm dispatch --json
hermes-pm pressure --json

approve-safe bulk-approves routine safe assignments and safe self-hounds to the operator. It still skips third-party delegation, unresolved non-operator destinations, destructive actions, and risky external side effects.

For smoke testing only:

hermes-pm install --yes --supervised-mode false

Local/manual-copy fallback

Local/manual-copy is always available. If Slack or Google Workspace is not configured, the pack still tracks projects and prints assignment/reminder/escalation copy locally.

External tools are projections. The local ledger is the source of truth.

Status and export

hermes-pm setup status
hermes-pm replay
hermes-pm export

Raw transcripts are excluded from exports by default.

Uninstall

Remove runtime, CLI wrapper, and Hermes skill while preserving project data:

hermes-pm uninstall

Remove everything, including the local ledger and config:

hermes-pm uninstall --remove-data

Safety rules

  • Do not silently choose external destinations.
  • Ask for clarification when owner/date/destination is ambiguous.
  • Approval-gate client-visible, money/legal/HR, destructive, low-confidence, and high-risk actions.
  • Require explicit evidence before marking work complete.
  • Do not treat transcripts as required to start or manage projects.