@hasna/skills 0.1.19 → 0.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/README.md +136 -18
  2. package/bin/index.js +33877 -33924
  3. package/bin/mcp.js +196 -95
  4. package/dist/cli/commands/completion.d.ts +5 -0
  5. package/dist/cli/commands/create-sync-config.d.ts +5 -0
  6. package/dist/cli/commands/diagnostic.d.ts +5 -0
  7. package/dist/cli/commands/init.d.ts +5 -0
  8. package/dist/cli/commands/install.d.ts +5 -0
  9. package/dist/cli/commands/introspect.d.ts +5 -0
  10. package/dist/cli/commands/list.d.ts +5 -0
  11. package/dist/cli/commands/runtime.d.ts +5 -0
  12. package/dist/cli/commands/schedule.d.ts +5 -0
  13. package/dist/index.js +197 -97
  14. package/dist/lib/config.d.ts +1 -1
  15. package/dist/lib/registry.d.ts +1 -11
  16. package/dist/lib/scheduler.d.ts +1 -1
  17. package/dist/lib/scheduler.test.d.ts +4 -0
  18. package/dist/lib/search.d.ts +17 -0
  19. package/package.json +1 -1
  20. package/skills/skill-commitpush/SKILL.md +57 -0
  21. package/skills/skill-commitpush/package.json +34 -0
  22. package/skills/skill-commitpush/src/index.ts +34 -0
  23. package/skills/skill-commitpush/tsconfig.json +17 -0
  24. package/skills/skill-commitpushpr/SKILL.md +55 -0
  25. package/skills/skill-commitpushpr/package.json +34 -0
  26. package/skills/skill-commitpushpr/src/index.ts +34 -0
  27. package/skills/skill-commitpushpr/tsconfig.json +17 -0
  28. package/skills/skill-monitor/SKILL.md +69 -0
  29. package/skills/skill-monitor/package.json +34 -0
  30. package/skills/skill-monitor/src/index.ts +34 -0
  31. package/skills/skill-monitor/tsconfig.json +17 -0
  32. package/skills/skill-read-csv/SKILL.md +62 -0
  33. package/skills/skill-read-csv/package.json +38 -0
  34. package/skills/skill-read-csv/src/index.ts +331 -0
  35. package/skills/skill-read-csv/tsconfig.json +17 -0
  36. package/skills/skill-read-excel/SKILL.md +64 -0
  37. package/skills/skill-read-excel/package.json +37 -0
  38. package/skills/skill-read-excel/src/index.ts +253 -0
  39. package/skills/skill-read-excel/tsconfig.json +17 -0
  40. package/skills/skill-read-image/SKILL.md +47 -0
  41. package/skills/skill-read-image/package.json +34 -0
  42. package/skills/skill-read-image/src/index.ts +264 -0
  43. package/skills/skill-read-image/tsconfig.json +17 -0
  44. package/skills/skill-read-pdf/SKILL.md +52 -0
  45. package/skills/skill-read-pdf/package.json +37 -0
  46. package/skills/skill-read-pdf/src/index.ts +376 -0
  47. package/skills/skill-read-pdf/tsconfig.json +17 -0
  48. package/skills/skill-tmux-session/SKILL.md +109 -0
  49. package/skills/skill-tmux-session/package.json +34 -0
  50. package/skills/skill-tmux-session/src/index.ts +34 -0
  51. package/skills/skill-tmux-session/tsconfig.json +17 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @hasna/skills
2
2
 
3
- Skills library for AI coding agents
3
+ Skills library for AI coding agents — discover, install, and run reusable capabilities for Claude Code, Codex CLI, Gemini CLI, and more.
4
4
 
5
5
  [![npm](https://img.shields.io/npm/v/@hasna/skills)](https://www.npmjs.com/package/@hasna/skills)
6
6
  [![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)
@@ -11,33 +11,92 @@ Skills library for AI coding agents
11
11
  npm install -g @hasna/skills
12
12
  ```
13
13
 
14
- ## CLI Usage
14
+ Requires [Bun](https://bun.sh/) 1.0+.
15
+
16
+ ## Quick Start
15
17
 
16
18
  ```bash
17
- skills --help
19
+ # Browse skills interactively
20
+ skills
21
+
22
+ # Install a skill to your project
23
+ skills install image
24
+
25
+ # Install for a specific agent
26
+ skills install image --for claude
27
+
28
+ # See what a skill needs
29
+ skills info image
30
+
31
+ # Run a skill
32
+ skills run image "a cat sitting on a windowsill"
18
33
  ```
19
34
 
20
- - `skills install`
21
- - `skills list`
22
- - `skills search`
23
- - `skills info`
24
- - `skills docs`
25
- - `skills run`
26
- - `skills remove`
27
- - `skills categories`
28
- - `skills tags`
35
+ ## CLI Commands
36
+
37
+ | Command | Alias | Description |
38
+ |---------|-------|-------------|
39
+ | `skills` | | Interactive TUI to browse, search, and install skills |
40
+ | `skills install <name>` | `add` | Install one or more skills to `.skills/` |
41
+ | `skills install --for claude` | | Copy SKILL.md to `~/.claude/skills/` (also `codex`, `gemini`, `pi`, `opencode`, `all`) |
42
+ | `skills install --category "Development Tools"` | | Install all skills in a category |
43
+ | `skills list` | `ls` | List available skills (filter with `-c`, `-i`, `-t`, `--brief`) |
44
+ | `skills search <query>` | `s` | Search by name, description, or tags |
45
+ | `skills info <name>` | | Show metadata, env vars, and system dependencies |
46
+ | `skills docs <name>` | | Show documentation (SKILL.md > README.md > CLAUDE.md) |
47
+ | `skills requires <name>` | | Show env vars, system deps, and npm dependencies |
48
+ | `skills run <name> [args]` | | Execute a skill directly |
49
+ | `skills remove <name>` | `rm` | Remove an installed skill |
50
+ | `skills update` | | Reinstall all skills with `--overwrite` (version diff shown) |
51
+ | `skills diff <name>` | | Preview file changes before updating a skill |
52
+ | `skills init` | | Generate `.env.example` and update `.gitignore` for installed skills |
53
+ | `skills categories` | | List all categories with skill counts |
54
+ | `skills tags` | | List all unique tags with occurrence counts |
55
+ | `skills doctor` | | Check env vars, system deps, and install health |
56
+ | `skills test [name]` | | Test skill readiness (env, system, npm deps) |
57
+ | `skills outdated` | | Compare installed vs registry versions |
58
+ | `skills auth [name]` | | Show/set auth env vars in `.env` |
59
+ | `skills whoami` | | Version, installed skills, agent configs, paths |
60
+ | `skills export` | | Export installed skills as JSON |
61
+ | `skills import <file>` | | Install skills from a JSON export |
62
+ | `skills config set <key> <value>` | | Set default agent, scope, or output format |
63
+ | `skills create <name>` | | Scaffold a new custom skill directory |
64
+ | `skills sync --to claude` | | Push custom skills to agent directories |
65
+ | `skills sync --from claude` | | List agent skills, `--register` to import unknown ones |
66
+ | `skills validate <name>` | | Check a skill's directory structure |
67
+ | `skills schedule add <skill> <cron>` | | Set up recurring skill execution |
68
+ | `skills schedule list` | | List all schedules (enabled/disabled/last run) |
69
+ | `skills mcp` | | Start MCP server on stdio |
70
+ | `skills mcp --register claude` | | Auto-register MCP server with an agent |
71
+ | `skills serve` | | Start the HTTP dashboard on localhost |
72
+ | `skills self-update` | | Update this package to the latest version |
73
+ | `skills completion <shell>` | | Generate shell completions (bash, zsh, fish) |
74
+
75
+ ### Common Options
76
+
77
+ - `--json` — Output as JSON (pipeable)
78
+ - `--brief` — One-line format
79
+ - `--dry-run` — Preview without applying changes
80
+ - `--verbose` — Debug logging to stderr
81
+ - `--no-color` — Disable ANSI colors
82
+ - `-o, --overwrite` — Overwrite existing files during install
29
83
 
30
84
  ## MCP Server
31
85
 
32
86
  ```bash
33
- skills-mcp
87
+ skills mcp # stdio transport (use with Claude/Codex MCP config)
34
88
  ```
35
89
 
36
- 5 tools available.
90
+ The MCP server exposes 20+ tools including `list_skills`, `search_skills`, `install_skill`, `get_skill_info`, `get_skill_docs`, `get_requirements`, `run_skill`, `schedule_skill`, `detect_project_skills`, `validate_skill`, and more.
37
91
 
38
- ## Cloud Sync
92
+ ### Register with an Agent
93
+
94
+ ```bash
95
+ skills mcp --register claude # Auto-register with Claude Code
96
+ skills mcp --register all # Register with all supported agents
97
+ ```
39
98
 
40
- This package supports cloud sync via `@hasna/cloud`:
99
+ ## Cloud Sync
41
100
 
42
101
  ```bash
43
102
  cloud setup
@@ -45,10 +104,69 @@ cloud sync push --service skills
45
104
  cloud sync pull --service skills
46
105
  ```
47
106
 
107
+ ## Dashboard
108
+
109
+ ```bash
110
+ skills serve # Start HTTP server (opens browser automatically)
111
+ skills serve --no-open # Start without opening the browser
112
+ ```
113
+
114
+ Dashboard features: searchable/filterable skills table, detail dialogs, stats cards, dark/light/system theme, oklch color tokens.
115
+
116
+ ## Project Structure
117
+
118
+ ```
119
+ src/
120
+ ├── cli/index.tsx # Commander.js CLI + Ink TUI
121
+ ├── mcp/index.ts # MCP server (stdio) with ~20 tools
122
+ ├── server/serve.ts # Bun.serve HTTP server + REST API
123
+ ├── lib/
124
+ │ ├── registry.ts # 202+ entries, search, categories, tags
125
+ │ ├── installer.ts # Copy skills to .skills/ or agent dirs
126
+ │ ├── skillinfo.ts # Docs, requirements, env/system detection
127
+ │ ├── scheduler.ts # Cron-based skill execution
128
+ │ ├── config.ts # Global + project config loading
129
+ │ └── utils.ts # normalizeSkillName()
130
+ ├── index.ts # Library re-exports (npm package entry)
131
+ └── *.test.ts # Test files
132
+
133
+ skills/ # 202+ skill directories
134
+ ├── _common/ # Shared utilities
135
+ └── skill-*/ # Each skill: src/, SKILL.md, package.json
136
+
137
+ dashboard/ # Vite + React 19 + Tailwind v4 SPA
138
+ ```
139
+
140
+ ## Installation Types
141
+
142
+ 1. **Full source** — copies skill to `.skills/` in your project (default)
143
+ 2. **Agent config** — copies only SKILL.md to `~/.{agent}/skills/` (use `--for`)
144
+ 3. **Global custom** — create with `skills create --global` (stores in `~/.hasna/skills/custom/`)
145
+
146
+ ## Development
147
+
148
+ ```bash
149
+ bun install
150
+ bun run build # Build CLI, MCP, library, and types
151
+ bun run dev # Run CLI in dev mode (no build needed)
152
+ bun run dashboard:dev # Vite dev server for web dashboard
153
+ bun run server:dev # HTTP server with --watch
154
+ bun test # Run all tests
155
+ bun run typecheck # TypeScript type checking
156
+ ```
157
+
158
+ ## Adding a New Skill
159
+
160
+ 1. Create `skills/skill-{name}/` with `src/index.ts`, `package.json`, `tsconfig.json`, `SKILL.md`
161
+ 2. Add an entry to the `SKILLS` array in `src/lib/registry.ts`
162
+ 3. Run `bun test` to verify validation passes
163
+
164
+ Skill directories are auto-discovered from `~/.hasna/skills/custom/` and `.skills/custom-skills/` — no registry entry needed for local custom skills.
165
+
48
166
  ## Data Directory
49
167
 
50
- Data is stored in `~/.hasna/skills/`.
168
+ Configuration and runtime data are stored in `~/.hasna/skills/`. Legacy `~/.skillsrc` is auto-migrated on first run.
51
169
 
52
170
  ## License
53
171
 
54
- Apache-2.0 -- see [LICENSE](LICENSE)
172
+ Apache-2.0 see [LICENSE](LICENSE)