open-index/open-npm huggingface dataset:
npm package: @hasna/analytics
Description: Business analytics for AI agents — KPIs, dashboards, reports, and AI-powered executive summaries
Author: Andrei Hasna
Latest version: 0.0.1

# @hasna/analytics

Business analytics for AI agents — track KPIs, manage dashboards, generate reports, and get AI-powered executive summaries.

## Install

```bash
npm install -g @hasna/analytics
```

## CLI

```bash
# KPIs
analytics kpi record --name revenue --value 50000 --category Finance --period 2024-Q1
analytics kpi get revenue
analytics kpi trend revenue --days 30
analytics kpi list --category Finance --latest

# Dashboards
analytics dashboard create --name "Sales Overview" --description "Main sales dashboard"
analytics dashboard list
analytics dashboard get <id>
analytics dashboard update <id> --name "Updated Name"
analytics dashboard delete <id>

# Reports
analytics report generate --name "Q1 Review" --type quarterly --period 2024-Q1
analytics report list --type quarterly
analytics report get <id>

# Health & Summary
analytics health
analytics summary
```

## MCP Server

```bash
analytics-mcp
```

Add to your MCP config:

```json
{
  "mcpServers": {
    "analytics": {
      "command": "analytics-mcp"
    }
  }
}
```

### MCP Tools

| Tool | Description |
|------|-------------|
| `record_kpi` | Record a KPI value |
| `get_kpi` | Get latest value for a KPI by name |
| `get_kpi_trend` | Get KPI trend over N days |
| `list_kpis` | List KPIs with optional filters |
| `get_latest_kpis` | Most recent value per unique KPI |
| `delete_kpi` | Delete a KPI entry |
| `create_dashboard` | Create a dashboard |
| `get_dashboard` | Get a dashboard by ID |
| `list_dashboards` | List all dashboards |
| `update_dashboard` | Update a dashboard |
| `delete_dashboard` | Delete a dashboard |
| `generate_report` | Generate a business report |
| `get_report` | Get a report by ID |
| `list_reports` | List reports with filters |
| `delete_report` | Delete a report |
| `get_business_health` | Get health summary across all KPIs |
| `generate_executive_summary` | AI-powered executive summary |

## Data Storage

Data is stored in `~/.hasna/analytics/analytics.db` by default.

Override with env vars:
- `HASNA_ANALYTICS_DIR` — full path to directory
- `ANALYTICS_DIR` — full path to directory

## Programmatic API

```typescript
import { recordKpi, getKpi, getBusinessHealth } from "@hasna/analytics";

const kpi = recordKpi({ name: "revenue", value: 50000, category: "Finance" });
const health = getBusinessHealth();
```

## License

Apache-2.0
npm package: @hasna/assistants
Description: Personal AI assistant that runs in your terminal — powered by Claude
Author: Hasna
Latest version: 1.1.139

# @hasna/assistants

Personal AI assistant that runs in your terminal — powered by Claude

[![npm](https://img.shields.io/npm/v/@hasna/assistants)](https://www.npmjs.com/package/@hasna/assistants)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/assistants
```

## CLI Usage

```bash
assistants --help
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service assistants
cloud sync pull --service assistants
```

## Data Directory

Data is stored in `~/.hasna/assistants/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/brains
Description: Fine-tuned model tracker and trainer — wraps OpenAI + Thinker Labs, gathers training data from todos/mementos/conversations/sessions
Author: Andrei Hasna
Latest version: 0.0.21

# @hasna/brains

Fine-tuned model tracker and trainer — wraps OpenAI + Thinker Labs, gathers training data from todos/mementos/conversations/sessions

[![npm](https://img.shields.io/npm/v/@hasna/brains)](https://www.npmjs.com/package/@hasna/brains)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/brains
```

## CLI Usage

```bash
brains --help
```

- `brains models list`
- `brains models show`
- `brains finetune start`
- `brains finetune status`
- `brains data`

## MCP Server

```bash
brains-mcp
```

## REST API

```bash
brains-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service brains
cloud sync pull --service brains
```

## Data Directory

Data is stored in `~/.hasna/brains/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/browser
Description: General-purpose browser agent toolkit — Playwright, Chrome DevTools Protocol, Lightpanda with auto engine selection. CLI + MCP + REST + SDK.
Latest version: 0.4.5

# @hasna/browser

General-purpose browser agent toolkit — Playwright, Chrome DevTools Protocol, Lightpanda with auto engine selection. CLI + MCP + REST + SDK.

[![npm](https://img.shields.io/npm/v/@hasna/browser)](https://www.npmjs.com/package/@hasna/browser)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/browser
```

## CLI Usage

```bash
browser --help
```

## MCP Server

```bash
browser-mcp
```

1 tools available.

## REST API

```bash
browser-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service browser
cloud sync pull --service browser
```

## Data Directory

Data is stored in `~/.hasna/browser/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/cli
Description: Unified management CLI for all @hasna/* open-source packages
Latest version: 0.1.0
Deprecated: Renamed to @hasna/agency — npm install -g @hasna/agency

# @hasna/cli

Unified management CLI for all @hasna/* open-source packages

[![npm](https://img.shields.io/npm/v/@hasna/cli)](https://www.npmjs.com/package/@hasna/cli)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/cli
```

## CLI Usage

```bash
hasna --help
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service cli
cloud sync pull --service cli
```

## Data Directory

Data is stored in `~/.hasna/cli/`.

## License

Apache-2.0
npm package: @hasna/cloud
Description: Shared cloud infrastructure — database adapter (SQLite + PostgreSQL), sync engine, feedback system, unified dotfile config
Latest version: 0.1.30

# @hasna/cloud

Shared cloud infrastructure — database adapter (SQLite + PostgreSQL), sync engine, feedback system, unified dotfile config

[![npm](https://img.shields.io/npm/v/@hasna/cloud)](https://www.npmjs.com/package/@hasna/cloud)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/cloud
```

## CLI Usage

```bash
cloud --help
```

- `cloud setup`
- `cloud status`
- `cloud sync push`
- `cloud sync pull`
- `cloud feedback`
- `cloud migrate`

## MCP Server

```bash
cloud-mcp
```

4 tools available.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/coders
Description: Open-source coding agent CLI with native @hasna/* ecosystem integration
Author: Andrei Hasna
Latest version: 0.2.2

# @hasna/coders

Open-source coding agent CLI with native @hasna/* ecosystem integration

[![npm](https://img.shields.io/npm/v/@hasna/coders)](https://www.npmjs.com/package/@hasna/coders)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/coders
```

## CLI Usage

```bash
coders --help
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service coders
cloud sync pull --service coders
```

## Data Directory

Data is stored in `~/.hasna/coders/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/configs
Description: AI coding agent configuration manager — store, version, apply, and share all your AI coding configs. CLI + MCP + REST API + Dashboard.
Author: Andrei Hasna
Latest version: 0.2.30

# @hasna/configs

AI coding agent configuration manager — store, version, apply, and share all your AI coding configs. CLI + MCP + REST API + Dashboard.

[![npm](https://img.shields.io/npm/v/@hasna/configs)](https://www.npmjs.com/package/@hasna/configs)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/configs
```

## CLI Usage

```bash
configs --help
configs profile resolve
configs profile apply --auto
```

## MCP Server

```bash
configs-mcp
```

## REST API

```bash
configs-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service configs
cloud sync pull --service configs
```

## Data Directory

Data is stored in `~/.hasna/configs/`.

## Machine-aware Profiles

`configs init` now seeds two platform profiles:

- `linux-arm64` for `spark01` / `spark02`
- `macos-arm64` for `apple01` / `apple03`

These profiles resolve machine variables like `{{WORKSPACE_ROOT}}`, `{{BUN_BIN_DIR}}`, `{{BUN_PATH}}`, and `{{PATH_PREFIX}}`, so synced configs can be portable across Linux and macOS arm64 machines.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/connectors
Description: Open source connector library - Install API connectors with a single command
Author: Hasna
Latest version: 1.3.19

# @hasna/connectors

Open-source connector platform for enabling, authenticating, and running API connectors from one package.

[![npm](https://img.shields.io/npm/v/@hasna/connectors)](https://www.npmjs.com/package/@hasna/connectors)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/connectors
```

## What It Is

`@hasna/connectors` is a single-product runtime:

- connectors stay inside this repo and package
- projects enable the connectors they want through `.connectors/manifest.json`
- credentials live in `~/.hasna/connectors/`
- CLI, MCP, REST, and the dashboard all use the same connector registry

## CLI

```bash
connectors --help
```

Typical flow:

```bash
connectors install github stripe
connectors auth github
connectors run github --help
connectors run stripe products list --limit 5
```

Key commands:

- `connectors install` writes project enablement to `.connectors/manifest.json`
- `connectors list` and `connectors search` browse the shared catalog
- `connectors docs` reads connector docs from the internal registry
- `connectors auth` stores credentials in `~/.hasna/connectors/`
- `connectors run` executes connector commands from the one-product runtime
- `connectors status` and `connectors doctor` verify setup and auth state

## MCP Server

```bash
connectors-mcp
```

## REST API

```bash
connectors-serve
```

## Project Layout

Project-local enablement is lightweight:

```text
.connectors/
├── manifest.json
└── index.ts
```

The package no longer copies full connector source trees into each project.

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service connectors
cloud sync pull --service connectors
```

## Data Directory

Data is stored in `~/.hasna/connectors/`.

## Contributor Notes

Contributor guidance for the one-repo / one-product model lives in [docs/one-repo-one-product.md](docs/one-repo-one-product.md).

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/contacts
Description: Contact management for AI coding agents — CLI + MCP + Web
Author: Andrei Hasna
Latest version: 0.6.15

# @hasna/contacts

Contact management for AI coding agents — CLI + MCP + Web

[![npm](https://img.shields.io/npm/v/@hasna/contacts)](https://www.npmjs.com/package/@hasna/contacts)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/contacts
```

## CLI Usage

```bash
contacts --help
```

## MCP Server

```bash
contacts-mcp
```

## REST API

```bash
contacts-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service contacts
cloud sync pull --service contacts
```

## Data Directory

Data is stored in `~/.hasna/contacts/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/context
Description: Self-hosted documentation context server for AI coding agents — crawl, index, and query library docs via MCP + CLI + HTTP
Author: Andrei Hasna
Latest version: 0.1.8

# @hasna/context

Self-hosted documentation context server for AI coding agents — crawl, index, and query library docs via MCP + CLI + HTTP

[![npm](https://img.shields.io/npm/v/@hasna/context)](https://www.npmjs.com/package/@hasna/context)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/context
```

## CLI Usage

```bash
context --help
```

## MCP Server

```bash
context-mcp
```

12 tools available.

## REST API

```bash
context-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service context
cloud sync pull --service context
```

## Data Directory

Data is stored in `~/.hasna/context/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/conversations
Description: Real-time CLI messaging for AI agents
Author: Hasna
Latest version: 0.2.46

# @hasna/conversations

Real-time CLI messaging for AI agents

[![npm](https://img.shields.io/npm/v/@hasna/conversations)](https://www.npmjs.com/package/@hasna/conversations)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/conversations
```

## CLI Usage

```bash
conversations-hook --help
```

- `conversations-hook send`
- `conversations-hook read`
- `conversations-hook digest`
- `conversations-hook search`
- `conversations-hook graph build`
- `conversations-hook agent`

## MCP Server

```bash
conversations-mcp
```

1 tools available.

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service conversations
cloud sync pull --service conversations
```

## Data Directory

Data is stored in `~/.hasna/conversations/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/deployment
Description: General-purpose deployment orchestration for AI agents — provision infrastructure, deploy apps, manage environments. CLI + MCP + REST + SDK.
Author: Andrei Hasna
Latest version: 0.0.7

# @hasna/deployment

General-purpose deployment orchestration for AI agents — provision infrastructure, deploy apps, manage environments. CLI + MCP + REST + SDK.

[![npm](https://img.shields.io/npm/v/@hasna/deployment)](https://www.npmjs.com/package/@hasna/deployment)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/deployment
```

## CLI Usage

```bash
deployment --help
```

- `deployment project create`
- `deployment project list`
- `deployment env create`
- `deployment env list`
- `deployment provider add`
- `deployment provider list`

## MCP Server

```bash
deployment-mcp
```

40 tools available.

## REST API

```bash
deployment-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service deployment
cloud sync pull --service deployment
```

## Data Directory

Data is stored in `~/.hasna/deployment/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/economy
Description: AI coding cost tracker — CLI + MCP server + REST API + web dashboard for Claude Code, Codex, and Gemini
Author: hasna
Latest version: 0.2.11

# @hasna/economy

AI coding cost tracker — CLI + MCP server + REST API + web dashboard for Claude Code, Codex, and Gemini

[![npm](https://img.shields.io/npm/v/@hasna/economy)](https://www.npmjs.com/package/@hasna/economy)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
bun install -g @hasna/economy
```

## CLI Usage

```bash
economy --help
```

## MCP Server

```bash
economy-mcp --help
```

## REST API

```bash
economy-serve --help
```

## Native macOS Menubar

The `menubar/` app is a native SwiftUI menu bar app built with `MenuBarExtra`, not Electron. It targets macOS 26 and talks to the REST API exposed by `economy-serve`. The server URL is configurable inside the app and defaults to `http://127.0.0.1:3456`.

Build it on macOS with Xcode / Swift 6.2:

```bash
cd menubar
swift build -c release
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service economy
cloud sync pull --service economy
```

## Data Directory

Data is stored in `~/.hasna/economy/`.

The main SQLite database lives at `~/.hasna/economy/economy.db`. Older `~/.economy/` data is auto-migrated on first open.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/emails
Description: Email management CLI + MCP server + dashboard for Resend and AWS SES
Author: Andrei Hasna
Latest version: 0.5.25

# @hasna/emails

Email management CLI + MCP server — send, receive, sync, and manage email via Resend, AWS SES, and Gmail.

[![npm](https://img.shields.io/npm/v/@hasna/emails)](https://www.npmjs.com/package/@hasna/emails)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/emails
```

## Quick Start

```bash
# Add a provider (SES, Resend, or Gmail)
emails provider add --type ses --region us-east-1 --access-key ... --secret-key ...
emails provider add-gmail   # requires: connectors auth gmail

# Set up a domain (buy + DNS + SES in one command)
emails domain setup example.com --provider <id> --email you@example.com ...

# Or configure DNS for an existing domain via Cloudflare
emails domain setup-cloudflare example.com --provider <id>

# Send an email
emails send --from you@example.com --to them@example.com --subject "Hi" --body "Hello"

# Sync Gmail inbox (full content — HTML + attachments)
emails inbox sync --all

# Check sent email log
emails email list

# Sync email data to RDS PostgreSQL
emails cloud push
```

## Command Structure

```
emails provider          # add/list/remove/sync providers (ses, resend, gmail)
emails domain            # add/verify/buy/setup/dns/check domains
emails address           # manage sender addresses
emails send              # send an email
emails email             # sent email: list, search, show, replies, thread
emails inbox             # inbound: sync (gmail/s3), list, read, reply, star, archive
emails template          # email templates
emails contact           # contacts (suppression list)
emails group             # recipient groups
emails sequence          # drip sequences
emails schedule          # scheduled emails: list, cancel, run
emails triage            # AI triage: classify, prioritize, draft replies
emails cloud             # sync to/from cloud (RDS PostgreSQL): push, pull, migrate
emails aws               # AWS setup: SES receipt rules, S3 inbound bucket
emails config            # configuration (key=value)
emails stats             # delivery statistics (--inbox for received mail)
emails analytics         # email analytics
emails doctor            # system diagnostics
emails serve             # HTTP server + dashboard
emails mcp               # install MCP server
```

## MCP Server

91 tools available for AI agents.

```bash
emails-mcp
```

## REST API

```bash
emails-serve
```

## Inbound Email (AWS SES → S3)

```bash
# Set up S3 bucket + SES receipt rules
emails aws setup-inbound --domain example.com --bucket my-emails

# Sync received emails locally
emails inbox sync-s3 --bucket my-emails --prefix inbound/example.com/
```

## Cloud Sync (PostgreSQL)

```bash
# Configure RDS
emails cloud setup --host <rds-host> --username <user>

# Push local SQLite → RDS
emails cloud push

# Pull RDS → local
emails cloud pull
```

## Data

Stored in `~/.hasna/emails/` (SQLite + attachments).

## License

Apache-2.0 — see [LICENSE](LICENSE)
npm package: @hasna/files
Description: Agent-first file management — index local folders and S3 buckets, tag, search, and retrieve files via CLI + MCP
Author: hasna
Latest version: 0.2.5

# @hasna/files

Agent-first file management — index local folders and S3 buckets, tag, search, and retrieve files via CLI + MCP

[![npm](https://img.shields.io/npm/v/@hasna/files)](https://www.npmjs.com/package/@hasna/files)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/files
```

## CLI Usage

```bash
files --help
```

## MCP Server

```bash
files-mcp
```

31 tools available.

## REST API

```bash
files-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service files
cloud sync pull --service files
```

## Data Directory

Data is stored in `~/.hasna/files/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/implementations
Description: Plans, audits, and logs for AI coding agents - CLI + MCP server + interactive TUI + web dashboard
Author: hasna
Latest version: 0.1.6

# @hasna/implementations

Plans, audits, and logs for AI coding agents - CLI + MCP server + interactive TUI + web dashboard

[![npm](https://img.shields.io/npm/v/@hasna/implementations)](https://www.npmjs.com/package/@hasna/implementations)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/implementations
```

## CLI Usage

```bash
implementations --help
```

## MCP Server

```bash
implementations-mcp
```

24 tools available.

## REST API

```bash
implementations-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service implementations
cloud sync pull --service implementations
```

## Data Directory

Data is stored in `~/.hasna/implementations/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/logs
Description: Log aggregation + browser script + headless page scanner + performance monitoring for AI agents
Author: Andrei Hasna
Latest version: 0.3.20

# @hasna/logs

Log aggregation + browser script + headless page scanner + performance monitoring for AI agents

[![npm](https://img.shields.io/npm/v/@hasna/logs)](https://www.npmjs.com/package/@hasna/logs)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/logs
```

## CLI Usage

```bash
logs --help
```

- `logs list`
- `logs tail`
- `logs summary`
- `logs push`
- `logs scan`
- `logs diagnose`

## MCP Server

```bash
logs-mcp
```

6 tools available.

## REST API

```bash
logs-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service logs
cloud sync pull --service logs
```

## Data Directory

Data is stored in `~/.hasna/logs/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/machines
Description: Machine fleet management CLI + MCP for developers
Latest version: 0.0.3

# @hasna/machines

Machine fleet management for developers — provision, sync, inspect, and operate multiple development machines from CLI and MCP.

## Binaries

- `machines`: Commander-based CLI for manifest, setup, sync, inspection, and dashboard commands
- `machines-mcp`: MCP server exposing fleet tools to AI agents
- `machines-agent`: lightweight local daemon for heartbeats and runtime reporting

## Manifest

`machines.json` is the desired fleet declaration.

```bash
machines manifest init
machines manifest bootstrap
machines manifest add --id spark01 --platform linux --workspace-path ~/workspace
machines manifest add --id apple03 --platform macos --workspace-path ~/Workspace --app ghostty:cask
machines manifest validate
machines manifest list
```

## Provision and reconcile

```bash
machines setup --machine spark01 --json
machines setup --machine spark01 --apply --yes
machines sync --machine spark01 --json
machines sync --machine spark01 --apply --yes
machines doctor --machine spark01
machines self-test
```

## Applications and tooling

```bash
machines apps list --machine apple03
machines apps status --machine apple03
machines apps diff --machine apple03
machines apps plan --machine apple03 --json
machines apps apply --machine apple03 --yes

machines install-claude status --machine spark01
machines install-claude diff --machine spark01
machines install-claude plan --machine spark01 --tool claude codex --json
machines install-claude apply --machine spark01 --tool claude codex --yes

machines install-tailscale --machine apple03 --json
```

## Notifications

```bash
machines notifications add --id ops --type webhook --target https://example.com/hook --event sync_failed
machines notifications list
machines notifications test --channel ops
machines notifications test --channel ops --apply --yes
machines notifications dispatch --event manual.test --message "hello fleet"
```

- `email` channels deliver through local `sendmail` or `mail` when available
- `webhook` channels deliver JSON via HTTP POST
- `command` channels execute the configured command with `HASNA_MACHINES_NOTIFICATION_*` env vars

## Dashboard

```bash
machines serve --json
machines serve --host 0.0.0.0 --port 7676
```

The dashboard exposes:

- `/` HTML dashboard
- `/health` health probe
- `/api/status` fleet status JSON
- `/api/manifest` current manifest JSON
- `/api/notifications` notification channel JSON
- `/api/doctor` doctor report JSON
- `/api/self-test` smoke-check JSON
- `/api/apps/status` app inventory JSON
- `/api/apps/diff` app drift JSON
- `/api/install-claude/status` CLI inventory JSON
- `/api/install-claude/diff` CLI drift JSON
- `/api/notifications/test` POST endpoint for test delivery

## Local development

```bash
bun install
bun test
bun run typecheck
bun run build
bun run src/cli/index.ts --help
```
npm package: @hasna/markdown
Description: Open Markdown Protocol (OMP) — structured markdown as intermediate representation between AI models. Smart LLM writes it, cheap LLM/regex executes it.
Author: Andrei Hasna
Latest version: 0.1.3

# @hasna/markdown

Open Markdown Protocol (OMP) — structured markdown as intermediate representation between AI models. Smart LLM writes it, cheap LLM/regex executes it.

[![npm](https://img.shields.io/npm/v/@hasna/markdown)](https://www.npmjs.com/package/@hasna/markdown)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/markdown
```

## CLI Usage

```bash
omp --help
```

- `omp validate <file>`
- `omp run <file>`
- `omp compile <file>`
- `omp lint <file>`
- `omp inspect <file>`
- `omp init`

## MCP Server

```bash
omp-mcp
```

## REST API

```bash
omp-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service markdown
cloud sync pull --service markdown
```

## Data Directory

Data is stored in `~/.hasna/markdown/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/mcps
Description: Meta-MCP registry & CLI — discover, manage, and proxy MCP servers
Latest version: 0.0.12

# @hasna/mcps

Meta-MCP registry & CLI — discover, manage, and proxy MCP servers

[![npm](https://img.shields.io/npm/v/@hasna/mcps)](https://www.npmjs.com/package/@hasna/mcps)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/mcps
```

## CLI Usage

```bash
mcps --help
```

- `mcps list`
- `mcps search`
- `mcps add`
- `mcps remove`
- `mcps enable`
- `mcps disable`
- `mcps tools`
- `mcps call`
- `mcps info`
- `mcps doctor`
- `mcps machines list`
- `mcps machines add --host spark01 --platform linux --arch arm64`
- `mcps machines seed-defaults`
- `mcps fleet catalog`
- `mcps fleet health --refresh`
- `mcps fleet install --yes`

## Fleet Operations

Use machine registration plus fleet health/install commands to manage `@hasna/*`
MCP packages across multiple hosts over SSH.

```bash
mcps machines add --host spark01 --username hasna --platform linux --arch arm64
mcps machines add --host apple01 --platform darwin --arch arm64
mcps fleet health --refresh
mcps fleet install --yes --mode missing-or-outdated
```

Notes:

- Fleet commands only target enabled machines.
- `mcps fleet install` requires `--yes` because it performs remote installs.
- Targets need SSH access plus `node` and either `bun` or `npm` available remotely.
- Use `-j` or `--json` on the new `machines` and `fleet` commands for scriptable output.

## MCP Server

```bash
mcps-mcp
```

The MCP server exposes registry, finder, machine registry, and fleet orchestration tools.

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service mcps
cloud sync pull --service mcps
```

## Data Directory

Data is stored in `~/.hasna/mcps/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/mementos
Description: Universal memory system for AI agents - CLI + MCP server + library API
Author: Andrei Hasna
Latest version: 0.14.18

# @hasna/mementos

Universal memory system for AI agents - CLI + MCP server + library API

[![npm](https://img.shields.io/npm/v/@hasna/mementos)](https://www.npmjs.com/package/@hasna/mementos)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/mementos
```

## CLI Usage

```bash
mementos --help
```

## MCP Server

```bash
mementos-mcp
```

116 tools available.

## REST API

```bash
mementos-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service mementos
cloud sync pull --service mementos
```

## Data Directory

Data is stored in `~/.hasna/mementos/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/prompts
Description: Reusable prompt library for AI agents — CLI + MCP server + REST API + web dashboard
Author: Andrei Hasna
Latest version: 0.3.19

# @hasna/prompts

Reusable prompt library for AI agents — CLI + MCP server + REST API + web dashboard

[![npm](https://img.shields.io/npm/v/@hasna/prompts)](https://www.npmjs.com/package/@hasna/prompts)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/prompts
```

## CLI Usage

```bash
prompts --help
```

## MCP Server

```bash
prompts-mcp
```

1 tools available.

## REST API

```bash
prompts-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service prompts
cloud sync pull --service prompts
```

## Data Directory

Data is stored in `~/.hasna/prompts/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/recordings
Description: Speech-to-text recording tool with MCP and CLI — records, transcribes, and optionally enhances text using AI
Author: Hasna
Latest version: 0.1.10

# @hasna/recordings

Speech-to-text recording tool with MCP and CLI — records, transcribes, and optionally enhances text using AI

[![npm](https://img.shields.io/npm/v/@hasna/recordings)](https://www.npmjs.com/package/@hasna/recordings)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/recordings
```

## CLI Usage

```bash
recordings --help
```

- `recordings record`
- `recordings transcribe <file>`
- `recordings list`
- `recordings show <id>`
- `recordings search <query>`
- `recordings delete <id>`
- `recordings stats`

## MCP Server

```bash
recordings-mcp
```

17 tools available.

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service recordings
cloud sync pull --service recordings
```

## Data Directory

Data is stored in `~/.hasna/recordings/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/repos
Description: Local repo intelligence platform for AI agents — track all repos, search commits, PRs, branches across your machine. CLI + MCP + Web dashboard.
Author: Andrei Hasna
Latest version: 0.1.5

# @hasna/repos

Local repo intelligence platform for AI agents. Track all repos on your machine, search commits, PRs, branches across every repository. CLI + MCP server + Web dashboard.

## Install

```bash
bun install -g @hasna/repos
```

## Quick Start

```bash
# Scan all repos under ~/Workspace
repos scan

# List all tracked repos
repos repos

# Search across everything
repos search "authentication"

# Show stats
repos stats

# Start the dashboard
repos-serve  # http://localhost:19450
```

## CLI Commands

| Command | Description |
|---------|-------------|
| `repos scan` | Discover and index all git repos |
| `repos repos` | List repositories |
| `repos repo <name>` | Get repo details |
| `repos commits` | List commits |
| `repos branches` | List branches |
| `repos tags` | List tags |
| `repos prs` | List pull requests |
| `repos search <query>` | Unified search across all entities |
| `repos stats` | Global statistics |
| `repos activity` | Recent commit activity |
| `repos contributors` | Top contributors |
| `repos stale` | Stale repos with no recent commits |
| `repos heatmap` | Commit activity heatmap |
| `repos sync-github` | Sync PRs from GitHub |
| `repos gh-info <name>` | Fetch GitHub metadata |

All commands support `--json` for machine-readable output.

## MCP Server

```bash
repos-mcp
```

19 tools available for AI agents:

- `list_repos`, `get_repo`, `search_repos`
- `list_commits`, `search_commits`
- `list_branches`, `list_tags`
- `list_prs`, `search_prs`
- `list_remotes`
- `search` (unified)
- `scan_repos`
- `get_stats`, `get_repo_stats`
- `sync_github_prs`, `sync_all_github_prs`, `fetch_repo_metadata`
- `register_agent`, `heartbeat`, `list_agents`

## REST API

```bash
repos-serve  # Default port: 19450
```

| Endpoint | Method | Description |
|----------|--------|-------------|
| `/api/repos` | GET | List repos |
| `/api/repos/:id` | GET | Get repo + stats |
| `/api/search/repos` | GET | Search repos |
| `/api/commits` | GET | List commits |
| `/api/search/commits` | GET | Search commits |
| `/api/branches` | GET | List branches |
| `/api/tags` | GET | List tags |
| `/api/prs` | GET | List PRs |
| `/api/search` | GET | Unified search |
| `/api/stats` | GET | Global stats |
| `/api/scan` | POST | Trigger scan |

## SDK

```typescript
import { scanRepos, searchAll, listRepos, getGlobalStats } from "@hasna/repos";

const result = scanRepos(["/home/user/code"]);
const repos = listRepos({ org: "myorg" });
const results = searchAll("authentication");
```

## Data Storage

SQLite database at `~/.hasna/repos/repos.db` with WAL mode and FTS5 full-text search.

## License

Apache-2.0
npm package: @hasna/sandboxes
Description: Universal cloud sandbox manager for AI coding agents - supports e2b, Daytona, Modal
Author: Andrei Hasna
Latest version: 0.1.20

# @hasna/sandboxes

Universal cloud sandbox manager for AI coding agents - supports e2b, Daytona, Modal

[![npm](https://img.shields.io/npm/v/@hasna/sandboxes)](https://www.npmjs.com/package/@hasna/sandboxes)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/sandboxes
```

## CLI Usage

```bash
sandboxes --help
```

## MCP Server

```bash
sandboxes-mcp
```

41 tools available.

## REST API

```bash
sandboxes-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service sandboxes
cloud sync pull --service sandboxes
```

## Data Directory

Data is stored in `~/.hasna/sandboxes/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/scaffolds
Description: App scaffolds for AI agents — saas, agent, blog, news, social, competition, review, landing pages
Author: Hasna
Latest version: 0.0.5

# @hasna/scaffolds

App scaffolds for AI agents — saas, agent, blog, news, social, competition, review, landing pages

[![npm](https://img.shields.io/npm/v/@hasna/scaffolds)](https://www.npmjs.com/package/@hasna/scaffolds)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/scaffolds
```

## CLI Usage

```bash
scaffolds --help
```

- `scaffolds list`
- `scaffolds search <query>`
- `scaffolds info <name>`
- `scaffolds install <name>`
- `scaffolds categories`

## MCP Server

```bash
scaffolds-mcp
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service scaffolds
cloud sync pull --service scaffolds
```

## Data Directory

Data is stored in `~/.hasna/scaffolds/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/search
Description: Unified search aggregator — 12 providers (Google, SerpAPI, Exa, Perplexity, Twitter, Reddit, YouTube, Brave, Bing, Hacker News, GitHub, arXiv) + YouTube transcription. CLI + MCP + REST API + Dashboard.
Author: Andrei Hasna
Latest version: 0.0.5

# @hasna/search

Unified search aggregator — query 12 search providers simultaneously and get normalized, deduplicated results. CLI + MCP server + REST API + Web Dashboard.

## Providers

| Provider | API | Key Required |
|----------|-----|--------------|
| Google | SerpAPI | `SERP_API_KEY` |
| SerpAPI (multi-engine) | SerpAPI | `SERP_API_KEY` |
| Exa.ai | Exa API | `EXA_API_KEY` |
| Perplexity | Perplexity API | `PERPLEXITY_API_KEY` |
| Brave Search | Brave Search API | `BRAVE_API_KEY` |
| Bing | Bing Web Search v7 | `BING_API_KEY` |
| Twitter/X | Twitter API v2 | `X_BEARER_TOKEN` |
| Reddit | Reddit OAuth | `REDDIT_CLIENT_ID` + `REDDIT_CLIENT_SECRET` |
| YouTube | YouTube Data API v3 | `YOUTUBE_API_KEY` |
| Hacker News | Algolia HN API | No key needed |
| GitHub | GitHub REST API | `GITHUB_TOKEN` |
| arXiv | arXiv API | No key needed |

## Install

```bash
bun add -g @hasna/search
```

## Usage

### CLI

```bash
# Unified search across all configured providers
search "typescript best practices"

# Search specific providers
search "query" --providers google,exa,perplexity

# Use a search profile
search "query" --profile research

# Provider-specific search
search:youtube "bun runtime" --transcribe

# Manage providers
search providers list
search providers enable brave

# Search history
search history
```

### MCP Server

```bash
# Install for Claude Code
search mcp --claude

# Or run directly
search-mcp
```

### REST API + Dashboard

```bash
search-serve --port 19800
# Open http://localhost:19800
```

## Features

- Multi-provider concurrent search
- Result normalization and deduplication
- Search profiles (research, social, video, code, academic)
- Search history and saved searches
- YouTube video transcription (via microservice-transcriber)
- Export results as JSON, CSV, or Markdown
- Web dashboard with dark/light mode

## License

Apache-2.0
npm package: @hasna/secrets
Description: A local secrets vault for AI agents — store API keys, passwords, tokens, and any credentials
Author: hasna
Latest version: 0.1.20

# @hasna/secrets

A local secrets vault for AI agents — store API keys, passwords, tokens, and any credentials

[![npm](https://img.shields.io/npm/v/@hasna/secrets)](https://www.npmjs.com/package/@hasna/secrets)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/secrets
```

## CLI Usage

```bash
secrets --help
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service secrets
cloud sync pull --service secrets
```

## Data Directory

Data is stored in `~/.hasna/secrets/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/sessions
Description: Session search and management for AI coding agents
Author: Hasna
Latest version: 0.11.12

# @hasna/sessions

Session search and management for AI coding agents

[![npm](https://img.shields.io/npm/v/@hasna/sessions)](https://www.npmjs.com/package/@hasna/sessions)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/sessions
```

## CLI Usage

```bash
sessions --help
```

## MCP Server

```bash
sessions-mcp
```

5 tools available.

## REST API

```bash
sessions-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service sessions
cloud sync pull --service sessions
```

## Data Directory

Data is stored in `~/.hasna/sessions/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/signatures
Description: Open source e-signature platform — sign PDFs locally, manage documents, MCP + CLI + API
Latest version: 0.1.5

# @hasna/signatures

Open source e-signature platform — sign PDFs locally, manage documents, MCP + CLI + API

[![npm](https://img.shields.io/npm/v/@hasna/signatures)](https://www.npmjs.com/package/@hasna/signatures)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/signatures
```

## CLI Usage

```bash
open-signatures --help
```

## MCP Server

```bash
signatures-mcp
```

## REST API

```bash
signatures-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service signatures
cloud sync pull --service signatures
```

## Data Directory

Data is stored in `~/.hasna/signatures/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/styles
Description: Style management platform for AI coding agents — profiles, preferences, health checks, and design system enforcement
Author: Andrei Hasna
Latest version: 0.1.1

# @hasna/styles

Style management platform for AI coding agents — profiles, preferences, health checks, and design system enforcement

[![npm](https://img.shields.io/npm/v/@hasna/styles)](https://www.npmjs.com/package/@hasna/styles)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/styles
```

## CLI Usage

```bash
styles --help
```

- `styles list`
- `styles info <name>`
- `styles use <name>`
- `styles init`
- `styles profile list`
- `styles profile create`

## MCP Server

```bash
styles-mcp
```

28 tools available.

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service styles
cloud sync pull --service styles
```

## Data Directory

Data is stored in `~/.hasna/styles/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/testers
Description: AI-powered QA testing CLI — spawns cheap AI agents to test web apps with headless browsers
Latest version: 0.0.28

# @hasna/testers

AI-powered QA testing CLI — spawns cheap AI agents to test web apps with headless browsers

[![npm](https://img.shields.io/npm/v/@hasna/testers)](https://www.npmjs.com/package/@hasna/testers)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/testers
```

## CLI Usage

```bash
testers --help
```

## MCP Server

```bash
testers-mcp
```

64 tools available.

## REST API

```bash
testers-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service testers
cloud sync pull --service testers
```

## Data Directory

Data is stored in `~/.hasna/testers/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/todos
Description: Universal task management for AI coding agents - CLI + MCP server + interactive TUI
Author: Andrei Hasna
Latest version: 0.11.29

# @hasna/todos

Universal task management for AI coding agents - CLI + MCP server + interactive TUI

[![npm](https://img.shields.io/npm/v/@hasna/todos)](https://www.npmjs.com/package/@hasna/todos)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)

## Install

```bash
npm install -g @hasna/todos
```

## CLI Usage

```bash
todos --help
```

## MCP Server

```bash
todos-mcp
```

135 tools available.

## REST API

```bash
todos-serve
```

## Cloud Sync

This package supports cloud sync via `@hasna/cloud`:

```bash
cloud setup
cloud sync push --service todos
cloud sync pull --service todos
```

## Data Directory

Data is stored in `~/.hasna/todos/`.

## License

Apache-2.0 -- see [LICENSE](LICENSE)
npm package: @hasna/transcriber
Description: Transcribe audio and video from files and URLs (YouTube, Vimeo, Wistia, etc.) using ElevenLabs, OpenAI Whisper, or DeepGram
Author: Andrei Hasna
Latest version: 0.0.1

# @hasna/transcriber

Transcribe audio and video from files and URLs (YouTube, Vimeo, Wistia, etc.) using ElevenLabs, OpenAI Whisper, or DeepGram. Full CLI + MCP server.

## Install

```bash
bun install -g @hasna/transcriber
# or
npm install -g @hasna/transcriber
```

Data is stored at `~/.hasna/transcriber/transcriber.db`. Override with `HASNA_TRANSCRIBER_DIR` or `TRANSCRIBER_DIR`.

## CLI Usage

```bash
# Transcribe a YouTube video
transcriber transcribe https://youtube.com/watch?v=...

# Transcribe a local file with OpenAI Whisper
transcriber transcribe /path/to/audio.mp3 --provider openai

# Transcribe with diarization (speaker detection) — ElevenLabs only
transcriber transcribe https://youtube.com/watch?v=... --diarize

# List transcripts
transcriber list

# Get a transcript
transcriber get <id>

# Search transcripts
transcriber search "machine learning"

# Export as SRT subtitles
transcriber export <id> --format srt

# Summarize with AI
transcriber summarize <id>

# Translate to another language
transcriber translate <id> --to fr

# Proofread
transcriber proofread run <id>

# Annotate at timestamp
transcriber annotate add <transcript-id> --at 123 --note "Key moment"

# Check providers
transcriber providers
```

## MCP Server

```bash
transcriber-mcp
```

Add to your Claude/MCP config:
```json
{
  "mcpServers": {
    "transcriber": {
      "command": "transcriber-mcp"
    }
  }
}
```

## Providers

| Provider | API Key Env | Notes |
|----------|-------------|-------|
| `elevenlabs` | `ELEVENLABS_API_KEY` | Default. Best quality, supports diarization |
| `openai` | `OPENAI_API_KEY` | Whisper v1 |
| `deepgram` | `DEEPGRAM_API_KEY` | Nova-3, supports diarization |

## Requirements

- `yt-dlp` — for downloading YouTube/Vimeo/etc.
- `ffmpeg` — for audio processing and clip export

## Features

- Transcribe files and URLs (YouTube, Vimeo, Wistia, and any yt-dlp source)
- Speaker diarization (identify multiple speakers)
- Word-level timestamps
- Auto-chunk long audio (>10 min)
- AI summarization (OpenAI / Anthropic)
- Translation to any language
- Proofread issues (spelling, grammar, punctuation, clarity)
- Export: TXT, SRT, VTT, ASS, Markdown, JSON
- Timestamped annotations/bookmarks
- YouTube comment import
- Podcast RSS feed auto-transcription
- Notion export
- Webhook notifications
- Tag-based organization

## License

Apache-2.0