$npx -y skills add Soul-Brews-Studio/arra-oracle-skills-cli --skill create-shortcutCreate local skills as shortcuts — makes real /commands in .claude/skills/. Use when user says "create shortcut", "create skill", "make a command for", "add shortcut", or wants a quick custom /slash-command. Also lists and deletes local skills. ALSO triggers on "Unknown skill", "
| 1 | # /create-shortcut - Local Skill Factory |
| 2 | |
| 3 | Create real local skills (`.claude/skills/<name>/SKILL.md`) that show up as `/commands` in autocomplete. |
| 4 | |
| 5 | ## Usage |
| 6 | |
| 7 | ``` |
| 8 | /create-shortcut # list local skills |
| 9 | /create-shortcut list # same, with numbers |
| 10 | /create-shortcut list --mine # only stamped skills (installer: create-shortcut) |
| 11 | /create-shortcut list --untagged # only skills with no installer: field |
| 12 | /create-shortcut create deploy "Run tests then deploy" |
| 13 | /create-shortcut delete deploy # delete by name |
| 14 | /create-shortcut delete 3 # delete by number |
| 15 | /create-shortcut --cleanup # interactive bulk-archive of --mine skills |
| 16 | /create-shortcut --cleanup --auto # auto-archive anything stamped + unused 30d+ |
| 17 | ``` |
| 18 | |
| 19 | ## How It Works |
| 20 | |
| 21 | Creates a SKILL.md in `.claude/skills/<name>/` (project-local) or `~/.claude/skills/<name>/` (global with `--global`). |
| 22 | |
| 23 | The skill immediately appears in `/` autocomplete after creation. |
| 24 | |
| 25 | --- |
| 26 | |
| 27 | ## Mode 1: List (default) |
| 28 | |
| 29 | Scan both local and global skills directories: |
| 30 | |
| 31 | ```bash |
| 32 | LOCAL_DIR=".claude/skills" |
| 33 | GLOBAL_DIR="$HOME/.claude/skills" |
| 34 | ``` |
| 35 | |
| 36 | For each directory, list skill folders and show: |
| 37 | |
| 38 | ``` |
| 39 | ⚡ Local Skills (.claude/skills/) |
| 40 | |
| 41 | 1. deploy Run tests then deploy to prod |
| 42 | 2. lint-fix Fix all linting errors |
| 43 | 3. db-migrate Run database migrations |
| 44 | |
| 45 | ⚡ Global Skills (~/.claude/skills/) |
| 46 | |
| 47 | 4. trace (v3.4.8) [core] Find projects, code... |
| 48 | 5. recap (v3.4.8) [core] Session orientation... |
| 49 | ... |
| 50 | |
| 51 | Delete local: /create-shortcut delete <name or number> |
| 52 | ``` |
| 53 | |
| 54 | Mark **core** (arra-oracle-skills-cli installed) skills with `[core]`. |
| 55 | Mark **stamped** skills (with `installer: create-shortcut` in frontmatter) with `[mine]` plus a relative-age hint (e.g. `2d ago`). |
| 56 | Local skills with no `installer:` field have no tag (origin unknown). |
| 57 | |
| 58 | ### Filter flags |
| 59 | |
| 60 | ``` |
| 61 | /create-shortcut list # default — all local + global, marks [core] / [mine] |
| 62 | /create-shortcut list --mine # only skills with `installer: create-shortcut` |
| 63 | /create-shortcut list --untagged # only skills with NO `installer:` field (origin unknown) |
| 64 | ``` |
| 65 | |
| 66 | For `--mine` and `--untagged`, the listing additionally shows: |
| 67 | |
| 68 | - `created_at` age (e.g. "2 days ago", "3 weeks ago") — pulled from the frontmatter `created_at:` field for `--mine`; absent for `--untagged`. |
| 69 | - Approximate **usage count** — derived by greping the command name across `~/.claude/projects/*/*.jsonl` session files (read-only, no stored counter — counts stay computed, not persisted). |
| 70 | |
| 71 | Example `--mine` output: |
| 72 | |
| 73 | ``` |
| 74 | ⚡ Your skills (installer: create-shortcut) |
| 75 | |
| 76 | 1. deploy [mine] 2d ago · used 7× Run tests then deploy |
| 77 | 2. read-and-deep-... [mine] 1d ago · used 1× Read a target and deep-analyse... |
| 78 | 3. resonance [mine] 3w ago · used 24× Capture a resonance moment... |
| 79 | |
| 80 | Bulk-archive: /create-shortcut --cleanup |
| 81 | ``` |
| 82 | |
| 83 | Implementation hint: parse each SKILL.md frontmatter (top YAML block between `---` lines) and check for the `installer:` key. `--mine` keeps only `installer: create-shortcut`; `--untagged` keeps only entries with no `installer:` key at all. Core skills (`installer: arra-oracle-skills-cli ...`) are excluded from both filtered views. |
| 84 | |
| 85 | --- |
| 86 | |
| 87 | ## Mode 2: Create |
| 88 | |
| 89 | ### `/create-shortcut create <name> [description]` |
| 90 | |
| 91 | If description not provided, ask: |
| 92 | |
| 93 | ``` |
| 94 | What should /<name> do? |
| 95 | ``` |
| 96 | |
| 97 | Then create the skill: |
| 98 | |
| 99 | ```bash |
| 100 | SKILL_DIR=".claude/skills/<name>" |
| 101 | mkdir -p "$SKILL_DIR" |
| 102 | ``` |
| 103 | |
| 104 | Write `SKILL.md` with a **provenance stamp** in the frontmatter (so the skill can later be filtered via `--mine` and bulk-cleaned via `--cleanup`): |
| 105 | |
| 106 | ```markdown |
| 107 | --- |
| 108 | name: <name> |
| 109 | description: <description> |
| 110 | installer: create-shortcut |
| 111 | created_at: <ISO 8601 timestamp with timezone, e.g. 2026-05-14T04:15:00+07:00> |
| 112 | created_session: <first 8 chars of $CLAUDE_SESSION_ID, optional but nice> |
| 113 | --- |
| 114 | |
| 115 | # /<name> |
| 116 | |
| 117 | <description> |
| 118 | |
| 119 | ## Step 0: Init |
| 120 | |
| 121 | Chain date with the first real command — never call date alone (saves 1 tool call): |
| 122 | |
| 123 | \```bash |
| 124 | date "+🕐 %H:%M %Z (%A %d %B %Y)" && <first-real-command-here> |
| 125 | \``` |
| 126 | |
| 127 | ## Instructions |
| 128 | |
| 129 | <Ask user what the skill should do, or generate from description> |
| 130 | |
| 131 | --- |
| 132 | |
| 133 | ARGUMENTS: $ARGUMENTS |
| 134 | ``` |
| 135 | |
| 136 | **Generating the stamp values**: |
| 137 | |
| 138 | ```bash |
| 139 | # created_at — ISO 8601 with local timezone offset |
| 140 | CREATED_AT="$(date -Iseconds 2>/dev/null || date +%Y-%m-%dT%H:%M:%S%z)" |
| 141 | |
| 142 | # created_sessio |