aigc-skillhub 1.0.0__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.
- aigc_skillhub-1.0.0/PKG-INFO +5 -0
- aigc_skillhub-1.0.0/aigc_skillhub/__init__.py +0 -0
- aigc_skillhub-1.0.0/aigc_skillhub/main.py +79 -0
- aigc_skillhub-1.0.0/aigc_skillhub.egg-info/PKG-INFO +5 -0
- aigc_skillhub-1.0.0/aigc_skillhub.egg-info/SOURCES.txt +9 -0
- aigc_skillhub-1.0.0/aigc_skillhub.egg-info/dependency_links.txt +1 -0
- aigc_skillhub-1.0.0/aigc_skillhub.egg-info/entry_points.txt +2 -0
- aigc_skillhub-1.0.0/aigc_skillhub.egg-info/requires.txt +1 -0
- aigc_skillhub-1.0.0/aigc_skillhub.egg-info/top_level.txt +1 -0
- aigc_skillhub-1.0.0/setup.cfg +4 -0
- aigc_skillhub-1.0.0/setup.py +13 -0
|
File without changes
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import sys
|
|
2
|
+
import json
|
|
3
|
+
import os
|
|
4
|
+
import requests
|
|
5
|
+
import argparse
|
|
6
|
+
from pathlib import Path
|
|
7
|
+
|
|
8
|
+
CONFIG_PATH = Path.home() / ".aigc" / "config.json"
|
|
9
|
+
BASE_URL = os.environ.get("AIGC_API_URL", "https://registry.aigcpl.com")
|
|
10
|
+
|
|
11
|
+
def get_config():
|
|
12
|
+
if not CONFIG_PATH.exists():
|
|
13
|
+
return {}
|
|
14
|
+
return json.loads(CONFIG_PATH.read_text())
|
|
15
|
+
|
|
16
|
+
def save_config(config):
|
|
17
|
+
CONFIG_PATH.parent.mkdir(parents=True, exist_ok=True)
|
|
18
|
+
CONFIG_PATH.write_text(json.dumps(config, indent=2))
|
|
19
|
+
|
|
20
|
+
def login(key):
|
|
21
|
+
# 验证 Key
|
|
22
|
+
headers = {"Authorization": f"Bearer {key}"}
|
|
23
|
+
res = requests.get(f"{BASE_URL}/api/v1/runtime/license/verify", headers=headers)
|
|
24
|
+
if res.status_code == 200:
|
|
25
|
+
save_config({"license_key": key})
|
|
26
|
+
print(f"✅ Login successful for: {res.json()['license_name']}")
|
|
27
|
+
else:
|
|
28
|
+
print(f"❌ Login failed: {res.text}")
|
|
29
|
+
sys.exit(1)
|
|
30
|
+
|
|
31
|
+
def list_skills():
|
|
32
|
+
config = get_config()
|
|
33
|
+
key = config.get("license_key")
|
|
34
|
+
if not key:
|
|
35
|
+
print("❌ Not logged in. Use 'aigc-skillhub login <key>'")
|
|
36
|
+
sys.exit(1)
|
|
37
|
+
|
|
38
|
+
headers = {"Authorization": f"Bearer {key}"}
|
|
39
|
+
res = requests.get(f"{BASE_URL}/api/v1/runtime/skills", headers=headers)
|
|
40
|
+
if res.status_code == 200:
|
|
41
|
+
skills = res.json()
|
|
42
|
+
print(f"Authorized Skills ({len(skills)}):")
|
|
43
|
+
for s in skills:
|
|
44
|
+
print(f" - {s['skill_code']} ({s['display_name']}) - {s.get('description', '')}")
|
|
45
|
+
else:
|
|
46
|
+
print(f"❌ Failed to fetch skills: {res.text}")
|
|
47
|
+
|
|
48
|
+
def mcp_mode():
|
|
49
|
+
# 简易 MCP 模拟,实际生产需对接 mcp-python-sdk
|
|
50
|
+
print("MCP Mode starting... (Stdin JSON-RPC listener active)")
|
|
51
|
+
# TODO: Implement MCP stdio loop
|
|
52
|
+
|
|
53
|
+
def main():
|
|
54
|
+
parser = argparse.ArgumentParser(prog="aigc-skillhub")
|
|
55
|
+
subparsers = parser.add_subparsers(dest="command")
|
|
56
|
+
|
|
57
|
+
# Login
|
|
58
|
+
login_parser = subparsers.add_parser("login")
|
|
59
|
+
login_parser.add_argument("key")
|
|
60
|
+
|
|
61
|
+
# List
|
|
62
|
+
subparsers.add_parser("list")
|
|
63
|
+
|
|
64
|
+
# MCP
|
|
65
|
+
subparsers.add_parser("mcp")
|
|
66
|
+
|
|
67
|
+
args = parser.parse_args()
|
|
68
|
+
|
|
69
|
+
if args.command == "login":
|
|
70
|
+
login(args.key)
|
|
71
|
+
elif args.command == "list":
|
|
72
|
+
list_skills()
|
|
73
|
+
elif args.command == "mcp":
|
|
74
|
+
mcp_mode()
|
|
75
|
+
else:
|
|
76
|
+
parser.print_help()
|
|
77
|
+
|
|
78
|
+
if __name__ == "__main__":
|
|
79
|
+
main()
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
setup.py
|
|
2
|
+
aigc_skillhub/__init__.py
|
|
3
|
+
aigc_skillhub/main.py
|
|
4
|
+
aigc_skillhub.egg-info/PKG-INFO
|
|
5
|
+
aigc_skillhub.egg-info/SOURCES.txt
|
|
6
|
+
aigc_skillhub.egg-info/dependency_links.txt
|
|
7
|
+
aigc_skillhub.egg-info/entry_points.txt
|
|
8
|
+
aigc_skillhub.egg-info/requires.txt
|
|
9
|
+
aigc_skillhub.egg-info/top_level.txt
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
requests
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
aigc_skillhub
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
from setuptools import setup, find_packages
|
|
2
|
+
|
|
3
|
+
setup(
|
|
4
|
+
name="aigc-skillhub",
|
|
5
|
+
version="1.0.0",
|
|
6
|
+
packages=find_packages(),
|
|
7
|
+
install_requires=["requests"],
|
|
8
|
+
entry_points={
|
|
9
|
+
"console_scripts": [
|
|
10
|
+
"aigc-skillhub=aigc_skillhub.main:main",
|
|
11
|
+
],
|
|
12
|
+
},
|
|
13
|
+
)
|