kctl-n8n 0.2.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.
- kctl_n8n-0.2.0/.gitignore +33 -0
- kctl_n8n-0.2.0/PKG-INFO +94 -0
- kctl_n8n-0.2.0/README.md +65 -0
- kctl_n8n-0.2.0/pyproject.toml +63 -0
- kctl_n8n-0.2.0/src/kctl_n8n/__init__.py +3 -0
- kctl_n8n-0.2.0/src/kctl_n8n/__main__.py +6 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/.upstream +3 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-javascript/BUILTIN_FUNCTIONS.md +825 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-javascript/COMMON_PATTERNS.md +1110 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-javascript/DATA_ACCESS.md +784 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-javascript/ERROR_PATTERNS.md +874 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-javascript/README.md +350 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-javascript/SKILL.md +784 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-python/COMMON_PATTERNS.md +794 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-python/DATA_ACCESS.md +702 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-python/ERROR_PATTERNS.md +601 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-python/README.md +386 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-python/SKILL.md +774 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-code-python/STANDARD_LIBRARY.md +974 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-expression-syntax/COMMON_MISTAKES.md +393 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-expression-syntax/EXAMPLES.md +483 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-expression-syntax/README.md +93 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-expression-syntax/SKILL.md +525 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-mcp-tools-expert/README.md +99 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-mcp-tools-expert/SEARCH_GUIDE.md +374 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-mcp-tools-expert/SKILL.md +966 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-mcp-tools-expert/VALIDATION_GUIDE.md +447 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-mcp-tools-expert/WORKFLOW_GUIDE.md +1044 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-node-configuration/DEPENDENCIES.md +789 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-node-configuration/OPERATION_PATTERNS.md +913 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-node-configuration/README.md +364 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-node-configuration/SKILL.md +835 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-validation-expert/ERROR_CATALOG.md +943 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-validation-expert/FALSE_POSITIVES.md +720 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-validation-expert/README.md +290 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-validation-expert/SKILL.md +761 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-workflow-patterns/README.md +251 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-workflow-patterns/SKILL.md +512 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-workflow-patterns/ai_agent_workflow.md +890 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-workflow-patterns/database_operations.md +785 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-workflow-patterns/http_api_integration.md +734 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-workflow-patterns/scheduled_tasks.md +773 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/mcp/n8n-workflow-patterns/webhook_processing.md +545 -0
- kctl_n8n-0.2.0/src/kctl_n8n/_skills/n8n-admin/SKILL.md +183 -0
- kctl_n8n-0.2.0/src/kctl_n8n/cli.py +113 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/__init__.py +0 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/audit.py +39 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/config_cmd.py +208 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/credentials.py +83 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/dashboard.py +76 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/doctor_cmd.py +103 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/executions.py +126 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/health.py +63 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/projects.py +86 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/skill_cmd.py +167 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/source_control.py +53 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/tags.py +105 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/users.py +135 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/variables.py +90 -0
- kctl_n8n-0.2.0/src/kctl_n8n/commands/workflows.py +227 -0
- kctl_n8n-0.2.0/src/kctl_n8n/core/__init__.py +0 -0
- kctl_n8n-0.2.0/src/kctl_n8n/core/callbacks.py +42 -0
- kctl_n8n-0.2.0/src/kctl_n8n/core/client.py +121 -0
- kctl_n8n-0.2.0/src/kctl_n8n/core/config.py +187 -0
- kctl_n8n-0.2.0/src/kctl_n8n/core/exceptions.py +52 -0
- kctl_n8n-0.2.0/src/kctl_n8n/core/output.py +122 -0
- kctl_n8n-0.2.0/tests/test_smoke.py +68 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*.egg-info/
|
|
5
|
+
*.egg
|
|
6
|
+
dist/
|
|
7
|
+
build/
|
|
8
|
+
.eggs/
|
|
9
|
+
|
|
10
|
+
# Virtual environments
|
|
11
|
+
.venv/
|
|
12
|
+
venv/
|
|
13
|
+
|
|
14
|
+
# IDE
|
|
15
|
+
.idea/
|
|
16
|
+
.vscode/
|
|
17
|
+
*.swp
|
|
18
|
+
*.swo
|
|
19
|
+
|
|
20
|
+
# Testing
|
|
21
|
+
.pytest_cache/
|
|
22
|
+
.coverage
|
|
23
|
+
htmlcov/
|
|
24
|
+
.mypy_cache/
|
|
25
|
+
.ruff_cache/
|
|
26
|
+
|
|
27
|
+
# OS
|
|
28
|
+
.DS_Store
|
|
29
|
+
Thumbs.db
|
|
30
|
+
|
|
31
|
+
# Environment
|
|
32
|
+
.env
|
|
33
|
+
.env.local
|
kctl_n8n-0.2.0/PKG-INFO
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: kctl-n8n
|
|
3
|
+
Version: 0.2.0
|
|
4
|
+
Summary: Kodemeio n8n CLI — manage n8n workflow automation instances via the public REST API
|
|
5
|
+
Author-email: Kodemeio <dev@kodeme.io>
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Keywords: automation,cli,kodemeio,n8n,workflow
|
|
8
|
+
Classifier: Development Status :: 3 - Alpha
|
|
9
|
+
Classifier: Environment :: Console
|
|
10
|
+
Classifier: Intended Audience :: System Administrators
|
|
11
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
14
|
+
Classifier: Topic :: System :: Systems Administration
|
|
15
|
+
Requires-Python: >=3.12
|
|
16
|
+
Requires-Dist: httpx>=0.28.0
|
|
17
|
+
Requires-Dist: kctl-lib>=0.8.0
|
|
18
|
+
Requires-Dist: pydantic>=2.10.0
|
|
19
|
+
Requires-Dist: pyyaml>=6.0.2
|
|
20
|
+
Requires-Dist: rich>=13.9.0
|
|
21
|
+
Requires-Dist: typer>=0.15.0
|
|
22
|
+
Provides-Extra: dev
|
|
23
|
+
Requires-Dist: mypy>=1.14.0; extra == 'dev'
|
|
24
|
+
Requires-Dist: pytest-httpx>=0.35.0; extra == 'dev'
|
|
25
|
+
Requires-Dist: pytest>=8.3.0; extra == 'dev'
|
|
26
|
+
Requires-Dist: ruff>=0.9.0; extra == 'dev'
|
|
27
|
+
Requires-Dist: types-pyyaml>=6.0.0; extra == 'dev'
|
|
28
|
+
Description-Content-Type: text/markdown
|
|
29
|
+
|
|
30
|
+
# kctl-n8n
|
|
31
|
+
|
|
32
|
+
Kodemeio CLI for [n8n](https://n8n.io) workflow automation instances.
|
|
33
|
+
|
|
34
|
+
Wraps the n8n public REST API with the same UX patterns as the rest of the `kctl-*` suite (profiles, shared config at `~/.config/kodemeio/config.yaml`, `--json` output, rich tables).
|
|
35
|
+
|
|
36
|
+
## Install
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
uv tool install --reinstall --from packages/kctl-n8n kctl-n8n
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Quick start
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
# Configure a profile
|
|
46
|
+
kctl-n8n config init --name idtpp --url https://n8n.idtpp.com --api-key "$N8N_API_KEY"
|
|
47
|
+
|
|
48
|
+
# Use it
|
|
49
|
+
kctl-n8n -p idtpp health
|
|
50
|
+
kctl-n8n -p idtpp workflows list
|
|
51
|
+
kctl-n8n -p idtpp executions list --limit 10
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Command groups
|
|
55
|
+
|
|
56
|
+
| Group | Purpose |
|
|
57
|
+
|---|---|
|
|
58
|
+
| `workflows` | list / get / create / update / delete / activate / deactivate / transfer / tags |
|
|
59
|
+
| `executions` | list / get / delete past workflow runs |
|
|
60
|
+
| `credentials` | create / delete / schema / transfer credentials |
|
|
61
|
+
| `users` | list / get / create / delete / change-role |
|
|
62
|
+
| `variables` | list / create / update / delete environment variables |
|
|
63
|
+
| `tags` | list / get / create / update / delete tags |
|
|
64
|
+
| `projects` | list / create / update / delete projects (Enterprise) |
|
|
65
|
+
| `audit` | generate audit reports |
|
|
66
|
+
| `source-control` | pull / push for Git-based workflow management |
|
|
67
|
+
| `config` | manage profiles in `~/.config/kodemeio/config.yaml` |
|
|
68
|
+
| `health` | `/healthz` check |
|
|
69
|
+
| `dashboard` | high-level instance overview |
|
|
70
|
+
| `doctor` | diagnostic checks |
|
|
71
|
+
| `skill` | generate the `n8n-admin` Claude Code skill + install MCP skills |
|
|
72
|
+
|
|
73
|
+
## Profile config
|
|
74
|
+
|
|
75
|
+
Stored under `~/.config/kodemeio/config.yaml` with service key `n8n`:
|
|
76
|
+
|
|
77
|
+
```yaml
|
|
78
|
+
profiles:
|
|
79
|
+
idtpp:
|
|
80
|
+
n8n:
|
|
81
|
+
url: https://n8n.idtpp.com
|
|
82
|
+
api_key: ${N8N_IDTPP_API_KEY} # env var expansion supported
|
|
83
|
+
tenant: tpp # optional
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## Skills
|
|
87
|
+
|
|
88
|
+
`kctl-n8n` bundles 8 Claude Code skills (one CLI-admin skill + 7 n8n-mcp workflow skills from [czlonkowski/n8n-skills](https://github.com/czlonkowski/n8n-skills)):
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
kctl-n8n skill generate # install n8n-admin SKILL.md to ~/.claude/skills/
|
|
92
|
+
kctl-n8n skill install-mcp-skills # install all 7 workflow-building skills
|
|
93
|
+
kctl-n8n skill list # show what's installed
|
|
94
|
+
```
|
kctl_n8n-0.2.0/README.md
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# kctl-n8n
|
|
2
|
+
|
|
3
|
+
Kodemeio CLI for [n8n](https://n8n.io) workflow automation instances.
|
|
4
|
+
|
|
5
|
+
Wraps the n8n public REST API with the same UX patterns as the rest of the `kctl-*` suite (profiles, shared config at `~/.config/kodemeio/config.yaml`, `--json` output, rich tables).
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
uv tool install --reinstall --from packages/kctl-n8n kctl-n8n
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Quick start
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Configure a profile
|
|
17
|
+
kctl-n8n config init --name idtpp --url https://n8n.idtpp.com --api-key "$N8N_API_KEY"
|
|
18
|
+
|
|
19
|
+
# Use it
|
|
20
|
+
kctl-n8n -p idtpp health
|
|
21
|
+
kctl-n8n -p idtpp workflows list
|
|
22
|
+
kctl-n8n -p idtpp executions list --limit 10
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Command groups
|
|
26
|
+
|
|
27
|
+
| Group | Purpose |
|
|
28
|
+
|---|---|
|
|
29
|
+
| `workflows` | list / get / create / update / delete / activate / deactivate / transfer / tags |
|
|
30
|
+
| `executions` | list / get / delete past workflow runs |
|
|
31
|
+
| `credentials` | create / delete / schema / transfer credentials |
|
|
32
|
+
| `users` | list / get / create / delete / change-role |
|
|
33
|
+
| `variables` | list / create / update / delete environment variables |
|
|
34
|
+
| `tags` | list / get / create / update / delete tags |
|
|
35
|
+
| `projects` | list / create / update / delete projects (Enterprise) |
|
|
36
|
+
| `audit` | generate audit reports |
|
|
37
|
+
| `source-control` | pull / push for Git-based workflow management |
|
|
38
|
+
| `config` | manage profiles in `~/.config/kodemeio/config.yaml` |
|
|
39
|
+
| `health` | `/healthz` check |
|
|
40
|
+
| `dashboard` | high-level instance overview |
|
|
41
|
+
| `doctor` | diagnostic checks |
|
|
42
|
+
| `skill` | generate the `n8n-admin` Claude Code skill + install MCP skills |
|
|
43
|
+
|
|
44
|
+
## Profile config
|
|
45
|
+
|
|
46
|
+
Stored under `~/.config/kodemeio/config.yaml` with service key `n8n`:
|
|
47
|
+
|
|
48
|
+
```yaml
|
|
49
|
+
profiles:
|
|
50
|
+
idtpp:
|
|
51
|
+
n8n:
|
|
52
|
+
url: https://n8n.idtpp.com
|
|
53
|
+
api_key: ${N8N_IDTPP_API_KEY} # env var expansion supported
|
|
54
|
+
tenant: tpp # optional
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Skills
|
|
58
|
+
|
|
59
|
+
`kctl-n8n` bundles 8 Claude Code skills (one CLI-admin skill + 7 n8n-mcp workflow skills from [czlonkowski/n8n-skills](https://github.com/czlonkowski/n8n-skills)):
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
kctl-n8n skill generate # install n8n-admin SKILL.md to ~/.claude/skills/
|
|
63
|
+
kctl-n8n skill install-mcp-skills # install all 7 workflow-building skills
|
|
64
|
+
kctl-n8n skill list # show what's installed
|
|
65
|
+
```
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["hatchling"]
|
|
3
|
+
build-backend = "hatchling.build"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "kctl-n8n"
|
|
7
|
+
version = "0.2.0"
|
|
8
|
+
description = "Kodemeio n8n CLI — manage n8n workflow automation instances via the public REST API"
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
license = "MIT"
|
|
11
|
+
requires-python = ">=3.12"
|
|
12
|
+
authors = [{ name = "Kodemeio", email = "dev@kodeme.io" }]
|
|
13
|
+
keywords = ["n8n", "workflow", "automation", "cli", "kodemeio"]
|
|
14
|
+
classifiers = [
|
|
15
|
+
"Development Status :: 3 - Alpha",
|
|
16
|
+
"Environment :: Console",
|
|
17
|
+
"Intended Audience :: System Administrators",
|
|
18
|
+
"License :: OSI Approved :: MIT License",
|
|
19
|
+
"Programming Language :: Python :: 3.12",
|
|
20
|
+
"Programming Language :: Python :: 3.13",
|
|
21
|
+
"Topic :: System :: Systems Administration",
|
|
22
|
+
]
|
|
23
|
+
dependencies = [
|
|
24
|
+
"kctl-lib>=0.8.0",
|
|
25
|
+
"typer>=0.15.0",
|
|
26
|
+
"httpx>=0.28.0",
|
|
27
|
+
"rich>=13.9.0",
|
|
28
|
+
"pydantic>=2.10.0",
|
|
29
|
+
"pyyaml>=6.0.2",
|
|
30
|
+
]
|
|
31
|
+
|
|
32
|
+
[project.optional-dependencies]
|
|
33
|
+
dev = [
|
|
34
|
+
"pytest>=8.3.0",
|
|
35
|
+
"pytest-httpx>=0.35.0",
|
|
36
|
+
"ruff>=0.9.0",
|
|
37
|
+
"mypy>=1.14.0",
|
|
38
|
+
"types-PyYAML>=6.0.0",
|
|
39
|
+
]
|
|
40
|
+
|
|
41
|
+
[project.scripts]
|
|
42
|
+
kctl-n8n = "kctl_n8n.cli:_run"
|
|
43
|
+
|
|
44
|
+
[tool.uv.sources]
|
|
45
|
+
kctl-lib = { workspace = true }
|
|
46
|
+
|
|
47
|
+
[tool.hatch.build.targets.wheel]
|
|
48
|
+
packages = ["src/kctl_n8n"]
|
|
49
|
+
# Bundle the n8n-admin skill + the czlonkowski n8n-skills as package data
|
|
50
|
+
artifacts = [
|
|
51
|
+
"src/kctl_n8n/_skills/**",
|
|
52
|
+
]
|
|
53
|
+
|
|
54
|
+
[tool.ruff]
|
|
55
|
+
target-version = "py312"
|
|
56
|
+
line-length = 120
|
|
57
|
+
|
|
58
|
+
[tool.ruff.lint]
|
|
59
|
+
select = ["E", "F", "I", "W", "UP", "B", "SIM"]
|
|
60
|
+
|
|
61
|
+
[tool.mypy]
|
|
62
|
+
python_version = "3.12"
|
|
63
|
+
strict = true
|