agent-skill-manager 0.1.1__tar.gz → 0.1.3__tar.gz

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 (22) hide show
  1. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/PKG-INFO +32 -19
  2. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/README.md +31 -18
  3. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/pyproject.toml +1 -1
  4. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/src/skill_manager/__init__.py +1 -1
  5. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/src/skill_manager/cli.py +11 -5
  6. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/src/skill_manager/deployment.py +0 -1
  7. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/src/skill_manager/metadata.py +0 -1
  8. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/uv.lock +1 -1
  9. agent_skill_manager-0.1.1/Dockerfile +0 -21
  10. agent_skill_manager-0.1.1/SKILL.md +0 -378
  11. agent_skill_manager-0.1.1/docker-compose.yml +0 -0
  12. agent_skill_manager-0.1.1/main.py +0 -9
  13. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/.gitignore +0 -0
  14. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/.pre-commit-config.yaml +0 -0
  15. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/.python-version +0 -0
  16. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/examples/.gitkeep +0 -0
  17. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/scripts/.gitkeep +0 -0
  18. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/src/skill_manager/agents.py +0 -0
  19. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/src/skill_manager/github.py +0 -0
  20. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/src/skill_manager/removal.py +0 -0
  21. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/src/skill_manager/validation.py +0 -0
  22. {agent_skill_manager-0.1.1 → agent_skill_manager-0.1.3}/tests/.gitkeep +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-skill-manager
3
- Version: 0.1.1
3
+ Version: 0.1.3
4
4
  Summary: CLI tool for managing AI agent skills across multiple platforms
5
5
  Project-URL: Homepage, https://github.com/ackness/skill-manager
6
6
  Project-URL: Repository, https://github.com/ackness/skill-manager
@@ -25,6 +25,8 @@ Description-Content-Type: text/markdown
25
25
 
26
26
  # Agent Skill Manager
27
27
 
28
+ ALL codes are written by Claude Code.
29
+
28
30
  A comprehensive CLI tool for managing AI agent skills across multiple platforms. Download, deploy, update, and manage skills for AI coding assistants like Claude Code, Cursor, Windsurf, and more.
29
31
 
30
32
  [![PyPI version](https://badge.fury.io/py/agent-skill-manager.svg)](https://pypi.org/project/agent-skill-manager/)
@@ -59,40 +61,50 @@ A comprehensive CLI tool for managing AI agent skills across multiple platforms.
59
61
 
60
62
  ## Installation
61
63
 
62
- ### Quick Run with uvx (No Installation Required)
64
+ ### Recommended: Install with uv tool
63
65
 
64
- Run directly without installing (recommended for trying it out):
66
+ The best way to install is using `uv tool`:
65
67
 
66
68
  ```bash
67
- # Show help (default command)
69
+ # Install from PyPI
70
+ uv tool install agent-skill-manager
71
+
72
+ # Verify installation
73
+ sm --version
74
+
75
+ # Start using
76
+ sm install
77
+ ```
78
+
79
+ **Why uv tool?**
80
+ - Isolated environment (no package conflicts)
81
+ - Easy updates: `uv tool upgrade agent-skill-manager`
82
+ - Clean uninstall: `uv tool uninstall agent-skill-manager`
83
+ - Works across all projects
84
+
85
+ ### Alternative: Run Without Installing
86
+
87
+ For one-time use or testing:
88
+
89
+ ```bash
90
+ # Run directly with uvx (no installation needed)
68
91
  uvx agent-skill-manager
69
92
 
70
- # Use sm command for specific operations
93
+ # Or run specific commands
71
94
  uvx --from agent-skill-manager sm install
72
95
  uvx --from agent-skill-manager sm list
73
- uvx --from agent-skill-manager sm update --all
74
-
75
- # Or create an alias for convenience
76
- alias sm="uvx --from agent-skill-manager sm"
77
- sm install # Now you can use it like the installed version
78
96
  ```
79
97
 
80
- ### Permanent Installation
98
+ ### Other Installation Methods
81
99
 
82
100
  ```bash
83
- # Using uv (recommended)
84
- uv tool install agent-skill-manager
85
-
86
101
  # Using pip
87
102
  pip install agent-skill-manager
88
103
 
89
- # Using pipx (isolated installation)
104
+ # Using pipx (isolated like uv tool)
90
105
  pipx install agent-skill-manager
91
- ```
92
106
 
93
- ### From Source
94
-
95
- ```bash
107
+ # From source (for development)
96
108
  git clone https://github.com/ackness/skill-manager.git
97
109
  cd skill-manager
98
110
  uv sync
@@ -135,6 +147,7 @@ sm uninstall # Uninstall a skill (safe delete)
135
147
  | `sm update` | Update selected skills from GitHub |
136
148
  | `sm update --all` | Update all GitHub-sourced skills |
137
149
  | `sm list` | Show installed skills with versions |
150
+ | `sm --version` / `sm -v` | Show version information |
138
151
 
139
152
  ## Usage Examples
140
153
 
@@ -1,5 +1,7 @@
1
1
  # Agent Skill Manager
2
2
 
3
+ ALL codes are written by Claude Code.
4
+
3
5
  A comprehensive CLI tool for managing AI agent skills across multiple platforms. Download, deploy, update, and manage skills for AI coding assistants like Claude Code, Cursor, Windsurf, and more.
4
6
 
5
7
  [![PyPI version](https://badge.fury.io/py/agent-skill-manager.svg)](https://pypi.org/project/agent-skill-manager/)
@@ -34,40 +36,50 @@ A comprehensive CLI tool for managing AI agent skills across multiple platforms.
34
36
 
35
37
  ## Installation
36
38
 
37
- ### Quick Run with uvx (No Installation Required)
39
+ ### Recommended: Install with uv tool
38
40
 
39
- Run directly without installing (recommended for trying it out):
41
+ The best way to install is using `uv tool`:
40
42
 
41
43
  ```bash
42
- # Show help (default command)
44
+ # Install from PyPI
45
+ uv tool install agent-skill-manager
46
+
47
+ # Verify installation
48
+ sm --version
49
+
50
+ # Start using
51
+ sm install
52
+ ```
53
+
54
+ **Why uv tool?**
55
+ - Isolated environment (no package conflicts)
56
+ - Easy updates: `uv tool upgrade agent-skill-manager`
57
+ - Clean uninstall: `uv tool uninstall agent-skill-manager`
58
+ - Works across all projects
59
+
60
+ ### Alternative: Run Without Installing
61
+
62
+ For one-time use or testing:
63
+
64
+ ```bash
65
+ # Run directly with uvx (no installation needed)
43
66
  uvx agent-skill-manager
44
67
 
45
- # Use sm command for specific operations
68
+ # Or run specific commands
46
69
  uvx --from agent-skill-manager sm install
47
70
  uvx --from agent-skill-manager sm list
48
- uvx --from agent-skill-manager sm update --all
49
-
50
- # Or create an alias for convenience
51
- alias sm="uvx --from agent-skill-manager sm"
52
- sm install # Now you can use it like the installed version
53
71
  ```
54
72
 
55
- ### Permanent Installation
73
+ ### Other Installation Methods
56
74
 
57
75
  ```bash
58
- # Using uv (recommended)
59
- uv tool install agent-skill-manager
60
-
61
76
  # Using pip
62
77
  pip install agent-skill-manager
63
78
 
64
- # Using pipx (isolated installation)
79
+ # Using pipx (isolated like uv tool)
65
80
  pipx install agent-skill-manager
66
- ```
67
81
 
68
- ### From Source
69
-
70
- ```bash
82
+ # From source (for development)
71
83
  git clone https://github.com/ackness/skill-manager.git
72
84
  cd skill-manager
73
85
  uv sync
@@ -110,6 +122,7 @@ sm uninstall # Uninstall a skill (safe delete)
110
122
  | `sm update` | Update selected skills from GitHub |
111
123
  | `sm update --all` | Update all GitHub-sourced skills |
112
124
  | `sm list` | Show installed skills with versions |
125
+ | `sm --version` / `sm -v` | Show version information |
113
126
 
114
127
  ## Usage Examples
115
128
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "agent-skill-manager"
3
- version = "0.1.1"
3
+ version = "0.1.3"
4
4
  description = "CLI tool for managing AI agent skills across multiple platforms"
5
5
  authors = [
6
6
  { name = "ackness", email = "ackness8@gmail.com" }
@@ -5,7 +5,7 @@ This package provides functionality to download, deploy, and manage
5
5
  skills across different AI agent platforms.
6
6
  """
7
7
 
8
- __version__ = "0.1.0"
8
+ __version__ = "0.1.3"
9
9
 
10
10
  from .agents import AGENTS, detect_existing_agents, get_agent_name, get_agent_path
11
11
  from .deployment import (
@@ -27,6 +27,7 @@ from rich.panel import Panel
27
27
  from rich.progress import Progress, SpinnerColumn, TextColumn
28
28
  from rich.table import Table
29
29
 
30
+ from . import __version__
30
31
  from .agents import AGENTS, detect_existing_agents, get_agent_name, get_agent_path
31
32
  from .deployment import (
32
33
  deploy_multiple_skills,
@@ -41,7 +42,6 @@ from .metadata import (
41
42
  save_skill_metadata,
42
43
  )
43
44
  from .removal import (
44
- clean_trash,
45
45
  hard_delete_skill,
46
46
  list_installed_skills,
47
47
  list_trashed_skills,
@@ -700,7 +700,7 @@ def cmd_uninstall() -> int:
700
700
  Panel.fit(
701
701
  f"[bold green]✓ Uninstallation successful![/bold green]\n\n"
702
702
  f"Removed {success_count} skills\n"
703
- + (f"[dim]Skills moved to trash and can be restored with 'sm restore'[/dim]" if deletion_type == "soft" else ""),
703
+ + ("[dim]Skills moved to trash and can be restored with 'sm restore'[/dim]" if deletion_type == "soft" else ""),
704
704
  border_style="green",
705
705
  )
706
706
  )
@@ -1129,10 +1129,15 @@ def main() -> int:
1129
1129
  Returns:
1130
1130
  Exit code
1131
1131
  """
1132
+ # Handle version flag
1133
+ if len(sys.argv) > 1 and sys.argv[1] in ("--version", "-v", "version"):
1134
+ console.print(f"[cyan]agent-skill-manager[/cyan] version [bold]{__version__}[/bold]")
1135
+ return 0
1136
+
1132
1137
  if len(sys.argv) < 2:
1133
1138
  console.print(
1134
1139
  Panel.fit(
1135
- "[bold cyan]Skill Manager[/bold cyan]\n\n"
1140
+ f"[bold cyan]Skill Manager[/bold cyan] [dim]v{__version__}[/dim]\n\n"
1136
1141
  "Usage:\n"
1137
1142
  " sm download - Download a skill from GitHub\n"
1138
1143
  " sm deploy - Deploy local skills to agents\n"
@@ -1141,7 +1146,8 @@ def main() -> int:
1141
1146
  " sm restore - Restore deleted skills from trash\n"
1142
1147
  " sm update - Update skills from GitHub\n"
1143
1148
  " sm update --all - Update all skills from GitHub\n"
1144
- " sm list - List installed skills and versions\n\n"
1149
+ " sm list - List installed skills and versions\n"
1150
+ " sm --version - Show version information\n\n"
1145
1151
  "[dim]Note: You can also use 'skill-manager' instead of 'sm'[/dim]",
1146
1152
  border_style="cyan",
1147
1153
  )
@@ -1167,7 +1173,7 @@ def main() -> int:
1167
1173
  return cmd_list()
1168
1174
  else:
1169
1175
  console.print(f"[red]Unknown command: {command}[/red]")
1170
- console.print("Available commands: download, deploy, install, uninstall, restore, update, list")
1176
+ console.print("Available commands: download, deploy, install, uninstall, restore, update, list, --version")
1171
1177
  return 1
1172
1178
  except KeyboardInterrupt:
1173
1179
  console.print("\n[yellow]Cancelled[/yellow]")
@@ -13,7 +13,6 @@ from .github import download_skill_from_github
13
13
  from .metadata import (
14
14
  list_updatable_skills,
15
15
  read_skill_metadata,
16
- save_skill_metadata,
17
16
  update_skill_metadata,
18
17
  )
19
18
 
@@ -8,7 +8,6 @@ import json
8
8
  from datetime import UTC, datetime
9
9
  from pathlib import Path
10
10
 
11
-
12
11
  METADATA_FILENAME = ".skill_metadata.json"
13
12
 
14
13
 
@@ -4,7 +4,7 @@ requires-python = ">=3.13"
4
4
 
5
5
  [[package]]
6
6
  name = "agent-skill-manager"
7
- version = "0.1.0"
7
+ version = "0.1.3"
8
8
  source = { editable = "." }
9
9
  dependencies = [
10
10
  { name = "httpx" },
@@ -1,21 +0,0 @@
1
- FROM python:3.13-slim-trixie
2
-
3
- COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
4
-
5
- ENV UV_CACHE_DIR=/root/.cache/uv \
6
- UV_LINK_MODE=copy \
7
- UV_COMPILE_BYTECODE=1
8
-
9
- WORKDIR /app
10
-
11
- RUN --mount=type=cache,target=${UV_CACHE_DIR} \
12
- --mount=type=bind,source=uv.lock,target=uv.lock \
13
- --mount=type=bind,source=pyproject.toml,target=pyproject.toml \
14
- uv sync --locked --no-install-project
15
-
16
- COPY . .
17
-
18
- RUN --mount=type=cache,target=${UV_CACHE_DIR} \
19
- uv sync --locked
20
-
21
- CMD ["uv", "run", "python", "main.py"]
@@ -1,378 +0,0 @@
1
- ---
2
- name: skill-manager
3
- description: Manage AI agent skills - download from GitHub, deploy to multiple agents, update, uninstall with safe deletion, and track versions. Use when users want to install, manage, or update skills for AI coding assistants like Claude Code, Cursor, Windsurf, etc.
4
- license: MIT
5
- compatibility: Requires Python 3.13+, uv or rye package manager, internet access for GitHub downloads
6
- metadata:
7
- author: ackness
8
- version: "0.1.0"
9
- repository: https://github.com/ackness/skill-manager
10
- pypi: agent-skill-manager
11
- platforms:
12
- - windows
13
- - linux
14
- - macos
15
- allowed-tools: Bash(uv:*) Bash(git:*) Read Write
16
- ---
17
-
18
- # Skill Manager
19
-
20
- A comprehensive CLI tool for managing AI agent skills across multiple platforms. Supports downloading skills from GitHub, deploying to various AI agents, version tracking, safe deletion with recovery, and automatic updates.
21
-
22
- ## Supported AI Agents
23
-
24
- - Claude Code
25
- - Cursor
26
- - Windsurf
27
- - OpenCode
28
- - Copilot
29
- - Goose
30
- - Gemini CLI
31
- - Roo Code
32
- - Kilo Code
33
- - Amp
34
- - Codex
35
- - Antigravity
36
- - Clawdbot
37
- - Droid
38
-
39
- ## Installation
40
-
41
- ### Quick Run (No Installation Required)
42
-
43
- Run directly with uvx without installing (perfect for one-time use or testing):
44
-
45
- ```bash
46
- # Show help menu
47
- uvx agent-skill-manager
48
-
49
- # Run specific commands
50
- uvx --from agent-skill-manager sm install
51
- uvx --from agent-skill-manager sm list
52
- uvx --from agent-skill-manager sm update --all
53
-
54
- # Create a shell alias for convenience
55
- alias sm="uvx --from agent-skill-manager sm"
56
- # Now use it like: sm install, sm list, etc.
57
- ```
58
-
59
- **Benefits of uvx:**
60
- - No installation needed
61
- - Always uses the latest version from PyPI
62
- - Isolated environment (no conflicts)
63
- - Perfect for CI/CD or automated scripts
64
-
65
- ### Permanent Installation
66
-
67
- ```bash
68
- # Install from PyPI with uv (recommended)
69
- uv tool install agent-skill-manager
70
-
71
- # Install from PyPI with pip
72
- pip install agent-skill-manager
73
-
74
- # Or install from source
75
- git clone https://github.com/ackness/skill-manager.git
76
- cd skill-manager
77
- uv sync
78
- uv pip install -e .
79
- ```
80
-
81
- After installation, the `sm` command will be available globally.
82
-
83
- ## Commands Overview
84
-
85
- ### Download Skills
86
- ```bash
87
- sm download
88
- ```
89
- Downloads a skill from GitHub to local storage. Saves metadata for version tracking and future updates.
90
-
91
- **When to use:** When you want to save a skill locally without deploying it yet.
92
-
93
- **Interactive prompts:**
94
- - GitHub URL of the skill
95
- - Whether to save to local skills/ directory
96
- - Category for organization (optional)
97
-
98
- ### Deploy Skills
99
- ```bash
100
- sm deploy
101
- ```
102
- Deploys skills from your local `skills/` directory to selected AI agents.
103
-
104
- **When to use:** When you have local skills ready to deploy to agents.
105
-
106
- **Interactive prompts:**
107
- - Deployment location (global/project)
108
- - Target agents
109
- - Skills to deploy
110
-
111
- ### Install Skills
112
- ```bash
113
- sm install
114
- ```
115
- Combined operation: downloads from GitHub and deploys to agents in one step.
116
-
117
- **When to use:** When you want to quickly install a skill from GitHub to your agents.
118
-
119
- **Interactive prompts:**
120
- - GitHub URL
121
- - Whether to save locally
122
- - Category (if saving locally)
123
- - Whether to deploy
124
- - Target agents and deployment location
125
-
126
- ### Update Skills
127
- ```bash
128
- # Update selected skills
129
- sm update
130
-
131
- # Update all skills with GitHub metadata
132
- sm update --all
133
- ```
134
- Updates skills from their GitHub sources. Only works for skills installed via `sm install` or with saved metadata.
135
-
136
- **When to use:** When you want to get the latest version of installed skills.
137
-
138
- **Features:**
139
- - Automatic backup before update
140
- - Rollback on failure
141
- - Updates metadata timestamps
142
- - Shows version information
143
-
144
- ### Uninstall Skills
145
- ```bash
146
- sm uninstall
147
- ```
148
- Removes skills from agents with two deletion modes:
149
- - **Safe delete (default):** Moves to `.trash` with timestamp for recovery
150
- - **Hard delete:** Permanent removal
151
-
152
- **When to use:** When you want to remove skills from agents.
153
-
154
- **Interactive prompts:**
155
- - Deployment type
156
- - Target agents
157
- - Skills to remove
158
- - Deletion type (safe/hard)
159
-
160
- ### Restore Skills
161
- ```bash
162
- sm restore
163
- ```
164
- Restores previously deleted skills from trash.
165
-
166
- **When to use:** When you accidentally deleted a skill or want to recover it.
167
-
168
- **Interactive prompts:**
169
- - Deployment type
170
- - Target agents
171
- - Skills to restore (shows deletion timestamp)
172
-
173
- ### List Skills
174
- ```bash
175
- sm list
176
- ```
177
- Shows all installed skills with version information across agents.
178
-
179
- **When to use:** When you want to see what skills are installed and their versions.
180
-
181
- **Displays:**
182
- - Skill names
183
- - Version/update timestamp
184
- - Source (GitHub/Local)
185
- - GitHub URL (for updatable skills)
186
- - Organized by agent
187
-
188
- ## Directory Structure
189
-
190
- ### Global Installation
191
- Skills installed globally are available to all projects:
192
- ```
193
- ~/.claude/skills/ # Claude Code
194
- ~/.cursor/skills/ # Cursor
195
- ~/.codeium/windsurf/skills/ # Windsurf
196
- # ... other agents
197
- ```
198
-
199
- ### Project Installation
200
- Skills installed at project level are only available in that project:
201
- ```
202
- project-root/
203
- .claude/skills/
204
- .cursor/skills/
205
- # ... other agents
206
- ```
207
-
208
- ### Metadata Storage
209
- Each skill installed from GitHub includes metadata:
210
- ```
211
- skill-name/
212
- SKILL.md
213
- .skill_metadata.json # Contains GitHub source, timestamps
214
- # ... skill files
215
- ```
216
-
217
- ### Trash Storage
218
- Safely deleted skills are stored with timestamps:
219
- ```
220
- ~/.claude/
221
- skills/ # Active skills
222
- .trash/ # Deleted skills
223
- 20260120_143052/ # Timestamp directory
224
- skill-name/
225
- .trash_metadata # Deletion info
226
- # ... skill files
227
- ```
228
-
229
- ## Version Tracking
230
-
231
- The tool uses two methods for version identification:
232
-
233
- 1. **GitHub Metadata** (for installed skills):
234
- - Tracks installation and update timestamps
235
- - Stores repository information
236
- - Enables automatic updates
237
- - Format: ISO 8601 timestamp
238
-
239
- 2. **File Modification Time** (for local skills):
240
- - Uses SKILL.md modification time
241
- - Fallback for skills without metadata
242
- - Format: YYYY-MM-DD HH:MM:SS
243
-
244
- ## Examples
245
-
246
- ### Install a skill from GitHub
247
-
248
- With uvx (no installation needed):
249
- ```bash
250
- uvx --from agent-skill-manager sm install
251
- # Enter URL: https://github.com/user/repo/tree/main/skills/example-skill
252
- # Save locally? Yes
253
- # Category: productivity
254
- # Deploy? Yes
255
- # Select agents: Claude Code, Cursor
256
- # Deployment: Global
257
- ```
258
-
259
- Or with installed version:
260
- ```bash
261
- sm install
262
- # Follow the same prompts as above
263
- ```
264
-
265
- ### Update all skills
266
- ```bash
267
- sm update --all
268
- # Selects all agents with GitHub-sourced skills
269
- # Downloads latest versions
270
- # Updates metadata timestamps
271
- ```
272
-
273
- ### List installed skills
274
- ```bash
275
- sm list
276
- # Shows table for each agent:
277
- # Skill Name | Version/Updated | Source | GitHub URL
278
- ```
279
-
280
- ### Uninstall with safe delete
281
- ```bash
282
- sm uninstall
283
- # Select skills to remove
284
- # Choose "Safe delete"
285
- # Skills moved to .trash with timestamp
286
- # Can be restored later with sm restore
287
- ```
288
-
289
- ## Best Practices
290
-
291
- 1. **Use safe delete by default** - You can always restore if needed
292
- 2. **Update regularly** - Run `sm update --all` periodically for bug fixes and improvements
293
- 3. **Save skills locally** - Keep a local copy in `skills/` for backup
294
- 4. **Organize with categories** - Use categories when saving locally for better organization
295
- 5. **Check versions** - Use `sm list` to see what's installed and outdated
296
-
297
- ## Troubleshooting
298
-
299
- ### Command not found: sm
300
- Reinstall the package:
301
- ```bash
302
- uv pip install -e .
303
- ```
304
-
305
- ### GitHub download fails
306
- - Check internet connection
307
- - Verify the GitHub URL is correct
308
- - Ensure the URL points to a directory, not a file
309
- - Check if the repository is public
310
-
311
- ### Skill not showing in agent
312
- - Verify the agent is running
313
- - Check deployment location (global vs project)
314
- - Ensure the skill has a valid SKILL.md file
315
- - Restart the agent if necessary
316
-
317
- ### Update fails
318
- - The tool automatically restores from backup
319
- - Check if the GitHub repository still exists
320
- - Verify internet connection
321
- - Try reinstalling: `sm uninstall` then `sm install`
322
-
323
- ## Technical Details
324
-
325
- ### Metadata Format
326
- ```json
327
- {
328
- "source": "github",
329
- "github_url": "https://github.com/...",
330
- "owner": "user",
331
- "repo": "repo-name",
332
- "branch": "main",
333
- "path": "skills/skill-name",
334
- "installed_at": "2026-01-20T14:30:52.123456+00:00",
335
- "updated_at": "2026-01-20T14:30:52.123456+00:00"
336
- }
337
- ```
338
-
339
- ### Agent Configuration
340
- Each agent has defined paths for:
341
- - **project**: Skills directory within current project
342
- - **global**: User-wide skills directory
343
- - See `src/skill_manager/agents.py` for complete mapping
344
-
345
- ### Update Process
346
- 1. Read skill metadata to get GitHub source
347
- 2. Download updated version to temporary location
348
- 3. Create backup of current version
349
- 4. Remove current version
350
- 5. Move updated version to skill location
351
- 6. Update metadata timestamp
352
- 7. Clean up temporary files
353
- 8. On failure: restore from backup
354
-
355
- ## Development
356
-
357
- To add support for a new AI agent:
358
-
359
- 1. Edit `src/skill_manager/agents.py`
360
- 2. Add agent configuration:
361
- ```python
362
- "agent-id": {
363
- "name": "Agent Name",
364
- "project": ".agent/skills/",
365
- "global": "~/.agent/skills/",
366
- }
367
- ```
368
- 3. Test with `sm list` to verify detection
369
-
370
- ## Related Resources
371
-
372
- - Agent Skills Specification: https://agentskills.io/specification
373
- - Report Issues: https://github.com/ackness/skill-manager/issues
374
- - Skill Registry: https://agentskills.io
375
-
376
- ## License
377
-
378
- MIT License - See LICENSE file for details
File without changes
@@ -1,9 +0,0 @@
1
- from loguru import logger
2
-
3
-
4
- def main():
5
- logger.info("Hello from main!")
6
-
7
-
8
- if __name__ == "__main__":
9
- main()