agent-skill-manager 0.1.0__tar.gz → 0.1.2__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.0/README.md → agent_skill_manager-0.1.2/PKG-INFO +57 -18
  2. agent_skill_manager-0.1.0/PKG-INFO → agent_skill_manager-0.1.2/README.md +32 -30
  3. {agent_skill_manager-0.1.0 → agent_skill_manager-0.1.2}/SKILL.md +43 -7
  4. {agent_skill_manager-0.1.0 → agent_skill_manager-0.1.2}/pyproject.toml +18 -1
  5. {agent_skill_manager-0.1.0/src/agent_skill_manager → agent_skill_manager-0.1.2/src/skill_manager}/cli.py +1 -2
  6. {agent_skill_manager-0.1.0/src/agent_skill_manager → agent_skill_manager-0.1.2/src/skill_manager}/deployment.py +0 -1
  7. {agent_skill_manager-0.1.0/src/agent_skill_manager → agent_skill_manager-0.1.2/src/skill_manager}/metadata.py +0 -1
  8. {agent_skill_manager-0.1.0 → agent_skill_manager-0.1.2}/uv.lock +35 -35
  9. agent_skill_manager-0.1.0/Dockerfile +0 -21
  10. agent_skill_manager-0.1.0/docker-compose.yml +0 -0
  11. agent_skill_manager-0.1.0/main.py +0 -9
  12. {agent_skill_manager-0.1.0 → agent_skill_manager-0.1.2}/.gitignore +0 -0
  13. {agent_skill_manager-0.1.0 → agent_skill_manager-0.1.2}/.pre-commit-config.yaml +0 -0
  14. {agent_skill_manager-0.1.0 → agent_skill_manager-0.1.2}/.python-version +0 -0
  15. {agent_skill_manager-0.1.0 → agent_skill_manager-0.1.2}/examples/.gitkeep +0 -0
  16. {agent_skill_manager-0.1.0 → agent_skill_manager-0.1.2}/scripts/.gitkeep +0 -0
  17. {agent_skill_manager-0.1.0/src/agent_skill_manager → agent_skill_manager-0.1.2/src/skill_manager}/__init__.py +0 -0
  18. {agent_skill_manager-0.1.0/src/agent_skill_manager → agent_skill_manager-0.1.2/src/skill_manager}/agents.py +0 -0
  19. {agent_skill_manager-0.1.0/src/agent_skill_manager → agent_skill_manager-0.1.2/src/skill_manager}/github.py +0 -0
  20. {agent_skill_manager-0.1.0/src/agent_skill_manager → agent_skill_manager-0.1.2/src/skill_manager}/removal.py +0 -0
  21. {agent_skill_manager-0.1.0/src/agent_skill_manager → agent_skill_manager-0.1.2/src/skill_manager}/validation.py +0 -0
  22. {agent_skill_manager-0.1.0 → agent_skill_manager-0.1.2}/tests/.gitkeep +0 -0
@@ -1,3 +1,28 @@
1
+ Metadata-Version: 2.4
2
+ Name: agent-skill-manager
3
+ Version: 0.1.2
4
+ Summary: CLI tool for managing AI agent skills across multiple platforms
5
+ Project-URL: Homepage, https://github.com/ackness/skill-manager
6
+ Project-URL: Repository, https://github.com/ackness/skill-manager
7
+ Project-URL: Issues, https://github.com/ackness/skill-manager/issues
8
+ Project-URL: Documentation, https://github.com/ackness/skill-manager#readme
9
+ Author-email: ackness <ackness8@gmail.com>
10
+ License: MIT
11
+ Keywords: agents,ai,claude,cli,cursor,skills,windsurf
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: License :: OSI Approved :: MIT License
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3.13
17
+ Classifier: Topic :: Software Development :: Libraries
18
+ Classifier: Topic :: Utilities
19
+ Requires-Python: >=3.13
20
+ Requires-Dist: httpx>=0.28.1
21
+ Requires-Dist: inquirerpy>=0.3.4
22
+ Requires-Dist: loguru>=0.7.3
23
+ Requires-Dist: rich>=14.2.0
24
+ Description-Content-Type: text/markdown
25
+
1
26
  # Agent Skill Manager
2
27
 
3
28
  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.
@@ -34,14 +59,23 @@ A comprehensive CLI tool for managing AI agent skills across multiple platforms.
34
59
 
35
60
  ## Installation
36
61
 
37
- ### From PyPI
62
+ ### Quick Run with uvx (No Installation Required)
63
+
64
+ Run directly without installing (recommended for trying it out):
38
65
 
39
66
  ```bash
40
- # Using pip
41
- pip install agent-skill-manager
67
+ uv tool install agent-skill-manager
68
+ sm
69
+ ```
42
70
 
71
+ ### Permanent Installation
72
+
73
+ ```bash
43
74
  # Using uv (recommended)
44
- uv pip install agent-skill-manager
75
+ uv tool install agent-skill-manager
76
+
77
+ # Using pip
78
+ pip install agent-skill-manager
45
79
 
46
80
  # Using pipx (isolated installation)
47
81
  pipx install agent-skill-manager
@@ -56,23 +90,28 @@ uv sync
56
90
  uv pip install -e .
57
91
  ```
58
92
 
59
- ## Quick Start
60
-
61
- ```bash
62
- # Install a skill from GitHub
63
- sm install
64
-
65
- # List installed skills
66
- sm list
93
+ ## Usage Methods Comparison
67
94
 
68
- # Update all skills
69
- sm update --all
95
+ | Method | Command | Use Case |
96
+ |--------|---------|----------|
97
+ | **uvx (no install)** | `uvx --from agent-skill-manager sm install` | One-time use, testing, CI/CD |
98
+ | **uv tool install** | `uv tool install agent-skill-manager` then `sm install` | Regular use, isolated |
99
+ | **pip install** | `pip install agent-skill-manager` then `sm install` | Traditional installation |
100
+ | **From source** | `git clone ...` then `uv pip install -e .` | Development |
70
101
 
71
- # Deploy local skills to agents
72
- sm deploy
102
+ ## Quick Start
73
103
 
74
- # Uninstall a skill (safe delete)
75
- sm uninstall
104
+ ```bash
105
+ # Run without installing (using uvx)
106
+ uvx --from agent-skill-manager sm install
107
+ uvx --from agent-skill-manager sm list
108
+
109
+ # Or after installation, use sm command directly:
110
+ sm install # Install a skill from GitHub
111
+ sm list # List installed skills
112
+ sm update --all # Update all skills
113
+ sm deploy # Deploy local skills to agents
114
+ sm uninstall # Uninstall a skill (safe delete)
76
115
  ```
77
116
 
78
117
  ## Commands
@@ -1,15 +1,3 @@
1
- Metadata-Version: 2.4
2
- Name: agent-skill-manager
3
- Version: 0.1.0
4
- Summary: CLI tool for managing AI agent skills across multiple platforms
5
- Author-email: ackness <ackness8@gmail.com>
6
- Requires-Python: >=3.13
7
- Requires-Dist: httpx>=0.28.1
8
- Requires-Dist: inquirerpy>=0.3.4
9
- Requires-Dist: loguru>=0.7.3
10
- Requires-Dist: rich>=14.2.0
11
- Description-Content-Type: text/markdown
12
-
13
1
  # Agent Skill Manager
14
2
 
15
3
  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.
@@ -46,14 +34,23 @@ A comprehensive CLI tool for managing AI agent skills across multiple platforms.
46
34
 
47
35
  ## Installation
48
36
 
49
- ### From PyPI
37
+ ### Quick Run with uvx (No Installation Required)
38
+
39
+ Run directly without installing (recommended for trying it out):
50
40
 
51
41
  ```bash
52
- # Using pip
53
- pip install agent-skill-manager
42
+ uv tool install agent-skill-manager
43
+ sm
44
+ ```
54
45
 
46
+ ### Permanent Installation
47
+
48
+ ```bash
55
49
  # Using uv (recommended)
56
- uv pip install agent-skill-manager
50
+ uv tool install agent-skill-manager
51
+
52
+ # Using pip
53
+ pip install agent-skill-manager
57
54
 
58
55
  # Using pipx (isolated installation)
59
56
  pipx install agent-skill-manager
@@ -68,23 +65,28 @@ uv sync
68
65
  uv pip install -e .
69
66
  ```
70
67
 
71
- ## Quick Start
72
-
73
- ```bash
74
- # Install a skill from GitHub
75
- sm install
76
-
77
- # List installed skills
78
- sm list
68
+ ## Usage Methods Comparison
79
69
 
80
- # Update all skills
81
- sm update --all
70
+ | Method | Command | Use Case |
71
+ |--------|---------|----------|
72
+ | **uvx (no install)** | `uvx --from agent-skill-manager sm install` | One-time use, testing, CI/CD |
73
+ | **uv tool install** | `uv tool install agent-skill-manager` then `sm install` | Regular use, isolated |
74
+ | **pip install** | `pip install agent-skill-manager` then `sm install` | Traditional installation |
75
+ | **From source** | `git clone ...` then `uv pip install -e .` | Development |
82
76
 
83
- # Deploy local skills to agents
84
- sm deploy
77
+ ## Quick Start
85
78
 
86
- # Uninstall a skill (safe delete)
87
- sm uninstall
79
+ ```bash
80
+ # Run without installing (using uvx)
81
+ uvx --from agent-skill-manager sm install
82
+ uvx --from agent-skill-manager sm list
83
+
84
+ # Or after installation, use sm command directly:
85
+ sm install # Install a skill from GitHub
86
+ sm list # List installed skills
87
+ sm update --all # Update all skills
88
+ sm deploy # Deploy local skills to agents
89
+ sm uninstall # Uninstall a skill (safe delete)
88
90
  ```
89
91
 
90
92
  ## Commands
@@ -38,16 +38,44 @@ A comprehensive CLI tool for managing AI agent skills across multiple platforms.
38
38
 
39
39
  ## Installation
40
40
 
41
+ ### Quick Run (No Installation Required)
42
+
43
+ Run directly with uvx without installing (perfect for one-time use or testing):
44
+
41
45
  ```bash
42
- # Clone or download the repository
43
- cd skill-manager
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
44
70
 
45
- # Install with uv (recommended)
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
46
77
  uv sync
47
78
  uv pip install -e .
48
-
49
- # Or install with rye
50
- rye sync
51
79
  ```
52
80
 
53
81
  After installation, the `sm` command will be available globally.
@@ -216,8 +244,10 @@ The tool uses two methods for version identification:
216
244
  ## Examples
217
245
 
218
246
  ### Install a skill from GitHub
247
+
248
+ With uvx (no installation needed):
219
249
  ```bash
220
- sm install
250
+ uvx --from agent-skill-manager sm install
221
251
  # Enter URL: https://github.com/user/repo/tree/main/skills/example-skill
222
252
  # Save locally? Yes
223
253
  # Category: productivity
@@ -226,6 +256,12 @@ sm install
226
256
  # Deployment: Global
227
257
  ```
228
258
 
259
+ Or with installed version:
260
+ ```bash
261
+ sm install
262
+ # Follow the same prompts as above
263
+ ```
264
+
229
265
  ### Update all skills
230
266
  ```bash
231
267
  sm update --all
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "agent-skill-manager"
3
- version = "0.1.0"
3
+ version = "0.1.2"
4
4
  description = "CLI tool for managing AI agent skills across multiple platforms"
5
5
  authors = [
6
6
  { name = "ackness", email = "ackness8@gmail.com" }
@@ -13,6 +13,23 @@ dependencies = [
13
13
  ]
14
14
  readme = "README.md"
15
15
  requires-python = ">= 3.13"
16
+ license = { text = "MIT" }
17
+ keywords = ["skills", "ai", "agents", "cli", "claude", "cursor", "windsurf"]
18
+ classifiers = [
19
+ "Development Status :: 4 - Beta",
20
+ "Intended Audience :: Developers",
21
+ "License :: OSI Approved :: MIT License",
22
+ "Programming Language :: Python :: 3",
23
+ "Programming Language :: Python :: 3.13",
24
+ "Topic :: Software Development :: Libraries",
25
+ "Topic :: Utilities",
26
+ ]
27
+
28
+ [project.urls]
29
+ Homepage = "https://github.com/ackness/skill-manager"
30
+ Repository = "https://github.com/ackness/skill-manager"
31
+ Issues = "https://github.com/ackness/skill-manager/issues"
32
+ Documentation = "https://github.com/ackness/skill-manager#readme"
16
33
 
17
34
  [project.scripts]
18
35
  skill-manager = "skill_manager.cli:main"
@@ -41,7 +41,6 @@ from .metadata import (
41
41
  save_skill_metadata,
42
42
  )
43
43
  from .removal import (
44
- clean_trash,
45
44
  hard_delete_skill,
46
45
  list_installed_skills,
47
46
  list_trashed_skills,
@@ -700,7 +699,7 @@ def cmd_uninstall() -> int:
700
699
  Panel.fit(
701
700
  f"[bold green]✓ Uninstallation successful![/bold green]\n\n"
702
701
  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 ""),
702
+ + ("[dim]Skills moved to trash and can be restored with 'sm restore'[/dim]" if deletion_type == "soft" else ""),
704
703
  border_style="green",
705
704
  )
706
705
  )
@@ -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
 
@@ -2,6 +2,41 @@ version = 1
2
2
  revision = 3
3
3
  requires-python = ">=3.13"
4
4
 
5
+ [[package]]
6
+ name = "agent-skill-manager"
7
+ version = "0.1.1"
8
+ source = { editable = "." }
9
+ dependencies = [
10
+ { name = "httpx" },
11
+ { name = "inquirerpy" },
12
+ { name = "loguru" },
13
+ { name = "rich" },
14
+ ]
15
+
16
+ [package.dev-dependencies]
17
+ dev = [
18
+ { name = "pre-commit" },
19
+ { name = "pytest" },
20
+ { name = "pytest-asyncio" },
21
+ { name = "ruff" },
22
+ ]
23
+
24
+ [package.metadata]
25
+ requires-dist = [
26
+ { name = "httpx", specifier = ">=0.28.1" },
27
+ { name = "inquirerpy", specifier = ">=0.3.4" },
28
+ { name = "loguru", specifier = ">=0.7.3" },
29
+ { name = "rich", specifier = ">=14.2.0" },
30
+ ]
31
+
32
+ [package.metadata.requires-dev]
33
+ dev = [
34
+ { name = "pre-commit", specifier = ">=4.4.0" },
35
+ { name = "pytest", specifier = ">=9.0.1" },
36
+ { name = "pytest-asyncio", specifier = ">=1.3.0" },
37
+ { name = "ruff", specifier = ">=0.14.5" },
38
+ ]
39
+
5
40
  [[package]]
6
41
  name = "anyio"
7
42
  version = "4.12.1"
@@ -355,41 +390,6 @@ wheels = [
355
390
  { url = "https://files.pythonhosted.org/packages/e5/80/69756670caedcf3b9be597a6e12276a6cf6197076eb62aad0c608f8efce0/ruff-0.14.5-py3-none-win_arm64.whl", hash = "sha256:4b700459d4649e2594b31f20a9de33bc7c19976d4746d8d0798ad959621d64a4", size = 13433331, upload-time = "2025-11-13T19:58:48.434Z" },
356
391
  ]
357
392
 
358
- [[package]]
359
- name = "skill-manager"
360
- version = "0.1.0"
361
- source = { editable = "." }
362
- dependencies = [
363
- { name = "httpx" },
364
- { name = "inquirerpy" },
365
- { name = "loguru" },
366
- { name = "rich" },
367
- ]
368
-
369
- [package.dev-dependencies]
370
- dev = [
371
- { name = "pre-commit" },
372
- { name = "pytest" },
373
- { name = "pytest-asyncio" },
374
- { name = "ruff" },
375
- ]
376
-
377
- [package.metadata]
378
- requires-dist = [
379
- { name = "httpx", specifier = ">=0.28.1" },
380
- { name = "inquirerpy", specifier = ">=0.3.4" },
381
- { name = "loguru", specifier = ">=0.7.3" },
382
- { name = "rich", specifier = ">=14.2.0" },
383
- ]
384
-
385
- [package.metadata.requires-dev]
386
- dev = [
387
- { name = "pre-commit", specifier = ">=4.4.0" },
388
- { name = "pytest", specifier = ">=9.0.1" },
389
- { name = "pytest-asyncio", specifier = ">=1.3.0" },
390
- { name = "ruff", specifier = ">=0.14.5" },
391
- ]
392
-
393
393
  [[package]]
394
394
  name = "virtualenv"
395
395
  version = "20.35.4"
@@ -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"]
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()