Skip to content

Commit 084630d

Browse files
authored
Merge pull request #329 from syncable-dev/develop
Develop
2 parents 389f501 + 5403db3 commit 084630d

25 files changed

Lines changed: 813 additions & 1890 deletions

File tree

.claude-plugin/marketplace.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@
66
},
77
"metadata": {
88
"description": "Syncable CLI skills for AI coding agents — project analysis, security, vulnerabilities, dependencies, IaC validation, and cloud deployment.",
9-
"version": "0.1.14"
9+
"version": "0.1.15"
1010
},
1111
"plugins": [
1212
{
1313
"name": "syncable-cli-skills",
1414
"source": "./installer/plugins/syncable-cli-skills",
1515
"description": "Syncable CLI skills for project analysis, security scanning, vulnerability detection, dependency auditing, IaC validation, Kubernetes optimization, and cloud deployment.",
16-
"version": "0.1.14",
16+
"version": "0.1.15",
1717
"author": {
1818
"name": "Syncable",
1919
"email": "support@syncable.dev"

installer/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "syncable-cli-skills",
3-
"version": "0.1.14",
3+
"version": "0.1.15",
44
"type": "module",
55
"description": "Install Syncable CLI skills for AI coding agents (Claude Code, Cursor, Windsurf, Codex, Gemini CLI)",
66
"license": "GPL-3.0",

installer/plugins/syncable-cli-skills/.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "syncable-cli-skills",
33
"description": "Syncable CLI skills for project analysis, security scanning, vulnerability detection, dependency auditing, IaC validation, Kubernetes optimization, and cloud deployment.",
4-
"version": "0.1.14",
4+
"version": "0.1.15",
55
"author": {
66
"name": "Syncable",
77
"email": "support@syncable.dev"
Lines changed: 23 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,103 +1,51 @@
11
---
2-
description: "Analyze a project's tech stack including languages, frameworks, runtimes, package managers, and dependencies using the Syncable CLI sync-ctl tool"
2+
description: "Use when the user asks to analyze a project, understand the tech stack, detect frameworks, check what languages are used, identify runtimes or package managers, or as a first step before security/vulnerability scans"
33
---
44

5-
## Purpose
5+
## Overview
66

7-
Analyze a project directory to detect its tech stack: programming languages, frameworks, runtimes, package managers, dependencies, Docker presence, and monorepo structure. This is the foundation skill — most workflows start here to understand what they're working with.
7+
Detect a project's tech stack languages, frameworks, runtimes, package managers, dependencies, Docker presence, monorepo structure. Foundation command; most workflows start here.
88

9-
## Prerequisites
9+
## Quick Reference
1010

11-
- `sync-ctl` binary installed and on PATH
12-
- Agent has access to the project directory
11+
| Flag | Purpose |
12+
|------|---------|
13+
| `--agent` | Compressed output for agent consumption (always use) |
14+
| `--display {matrix\|detailed\|summary}` | Human-readable format |
15+
| `--only <filters>` | Comma-separated: `languages`, `frameworks`, `dependencies` |
1316

14-
## Commands
17+
## Steps
1518

16-
### Basic analysis (agent output)
19+
### 1. Run analysis
1720

1821
```bash
1922
sync-ctl analyze <PATH> --agent
2023
```
2124

22-
### Human-readable matrix view
23-
24-
```bash
25-
sync-ctl analyze <PATH> --display matrix
26-
```
27-
28-
### Filtered analysis (only specific aspects)
29-
30-
```bash
31-
sync-ctl analyze <PATH> --agent --only languages,frameworks
32-
sync-ctl analyze <PATH> --agent --only dependencies
33-
```
34-
35-
### Key Flags
36-
37-
| Flag | Purpose |
38-
|------|---------|
39-
| `--agent` | Compressed output for agent consumption (always use when processing results) |
40-
| `--detailed` | Show detailed analysis (legacy vertical format) |
41-
| `--display {matrix\|detailed\|summary}` | Display format for human-readable output |
42-
| `--only <filters>` | Comma-separated: `languages`, `frameworks`, `dependencies` |
43-
44-
## Output Interpretation
25+
**Success criteria:** JSON output with `summary` and `full_data_ref` fields present.
4526

46-
When reporting to the user, prioritize: primary language, main framework, runtime version, and whether Docker/K8s infrastructure exists.
27+
### 2. Report to user
4728

48-
## Reading Results
29+
Prioritize: primary language, main framework, runtime version, Docker/K8s presence.
4930

50-
When you use `--agent`, the output is a compressed summary — not the full analysis. Act on it directly for most decisions.
31+
### 3. Drill into details (if needed)
5132

52-
The output JSON includes:
53-
- `summary` — project count, languages, frameworks detected
54-
- `full_data_ref` — reference ID for retrieving full data
55-
- `retrieval_hint` — exact command to get more details
33+
Save the `full_data_ref`. Use `sync-ctl retrieve` — do NOT re-run analyze:
5634

57-
To drill into specifics:
5835
```bash
59-
# Get framework details
6036
sync-ctl retrieve <ref_id> --query "section:frameworks"
61-
62-
# Get language breakdown
6337
sync-ctl retrieve <ref_id> --query "section:languages"
64-
65-
# Get specific project details (monorepos)
66-
sync-ctl retrieve <ref_id> --query "project:<project-name>"
67-
68-
# Get specific language details
38+
sync-ctl retrieve <ref_id> --query "project:<name>" # monorepos
6939
sync-ctl retrieve <ref_id> --query "language:Go"
70-
71-
# Get specific framework details
7240
sync-ctl retrieve <ref_id> --query "framework:React"
73-
74-
# List all stored outputs
75-
sync-ctl retrieve --list
7641
```
7742

78-
**Available query filters:** `section:summary`, `section:frameworks`, `section:languages`, `language:<name>`, `framework:<name>`, `project:<name>`, `compact:true`
43+
**Available queries:** `section:summary`, `section:frameworks`, `section:languages`, `language:<name>`, `framework:<name>`, `project:<name>`, `compact:true`
7944

8045
## Error Handling
8146

82-
| Error | Cause | Action |
83-
|-------|-------|--------|
84-
| `No such file or directory` | Invalid path | Ask user to verify the project path |
85-
| Empty output | No recognizable project files | Tell user the directory may not contain a supported project. Run `sync-ctl support` to show supported technologies |
86-
| Timeout | Very large monorepo | Try `--only languages` for a faster partial scan |
87-
88-
## Examples
89-
90-
**Analyze current directory:**
91-
```bash
92-
sync-ctl analyze . --agent
93-
```
94-
95-
**Analyze a specific project:**
96-
```bash
97-
sync-ctl analyze /path/to/project --agent
98-
```
99-
100-
**Quick language-only check:**
101-
```bash
102-
sync-ctl analyze . --agent --only languages
103-
```
47+
| Error | Action |
48+
|-------|--------|
49+
| `No such file or directory` | Ask user to verify path |
50+
| Empty output | No supported project files. Run `sync-ctl support` |
51+
| Timeout on large monorepo | Try `--only languages` for partial scan |
Lines changed: 23 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,93 +1,49 @@
11
---
2-
description: "Audit project dependencies for licenses, production vs development split, and detailed package analysis using the Syncable CLI sync-ctl tool"
2+
description: "Use when the user asks to audit dependencies, check licenses, list packages, review dependency health, check for copyleft issues, or see prod vs dev dependency split"
33
---
44

5-
## Purpose
5+
## Overview
66

7-
Analyze project dependencies in detail: list all packages, check license types, separate production from development dependencies, and optionally flag vulnerabilities inline. Use this for license compliance and dependency inventory.
7+
List all project dependencies with license types, prod/dev split, and ecosystem breakdown. Use for license compliance and dependency inventory.
88

9-
## Prerequisites
9+
## Flags
1010

11-
- `sync-ctl` binary installed and on PATH
12-
- Agent has access to the project directory
11+
| Flag | Purpose |
12+
|------|---------|
13+
| `--agent` | Compressed output (always use) |
14+
| `--licenses` | Include license info per dependency |
15+
| `--vulnerabilities` | Quick inline vuln check (for thorough CVE scan, use `sync-ctl vulnerabilities` instead) |
16+
| `--prod-only` | Production dependencies only |
17+
| `--dev-only` | Development dependencies only |
1318

14-
## Commands
19+
## Steps
1520

16-
### Full dependency analysis with licenses
21+
### 1. Run dependency audit
1722

1823
```bash
1924
sync-ctl dependencies <PATH> --licenses --agent
2025
```
2126

22-
### Production dependencies only
23-
24-
```bash
25-
sync-ctl dependencies <PATH> --licenses --prod-only --agent
26-
```
27-
28-
### Key Flags
29-
30-
| Flag | Purpose |
31-
|------|---------|
32-
| `--agent` | Compressed output for agent consumption (always use) |
33-
| `--licenses` | Include license information for each dependency |
34-
| `--vulnerabilities` | Quick inline vulnerability check (for thorough CVE scanning, use the standalone `sync-ctl vulnerabilities` command instead) |
35-
| `--prod-only` | Show only production dependencies |
36-
| `--dev-only` | Show only development dependencies |
37-
38-
## Output Interpretation
39-
40-
**Priority for reporting to user:**
41-
1. License concerns (copyleft in commercial projects, unknown licenses)
42-
2. Dependency counts (prod vs dev)
43-
3. Specific packages only if asked
27+
**Success criteria:** JSON output with `total`, `production`/`development` counts, and `by_license` distribution.
4428

45-
**When to use `--vulnerabilities` vs standalone `vulnerabilities` command:**
46-
- Use `--vulnerabilities` here for a quick inline check alongside license info
47-
- Use `sync-ctl vulnerabilities` for a dedicated, thorough CVE scan
29+
### 2. Report to user
4830

49-
## Reading Results
31+
Priority: license concerns (copyleft, unknown) > dependency counts (prod vs dev) > specific packages (only if asked).
5032

51-
When you use `--agent`, the output is a **compressed summary** with counts, license distribution, and source breakdown. Individual package details are NOT in the compressed output — use `sync-ctl retrieve` to get them.
33+
### 3. Retrieve package details (if needed)
5234

53-
**What's in the compressed output:**
54-
- `total` — total dependency count
55-
- `production` / `development` — prod vs dev split
56-
- `by_source` — counts per ecosystem (npm, crates.io, pypi, etc.)
57-
- `by_license` — license distribution
58-
- `full_data_ref` — reference ID for the full data
35+
Compressed output has counts and distributions only. Individual packages require retrieve:
5936

60-
**To get individual package details, use retrieve:**
6137
```bash
62-
# Get the full dependency list
6338
sync-ctl retrieve <ref_id>
64-
65-
# Search for a specific package
6639
sync-ctl retrieve <ref_id> --query "file:package.json"
6740
```
6841

69-
Results are paginated (default 20). Use `--limit N --offset M` for more.
42+
Results paginated (default 20). Use `--limit N --offset M` for more.
7043

7144
## Error Handling
7245

73-
| Error | Cause | Action |
74-
|-------|-------|--------|
75-
| `No dependencies found` | No package manager files | Verify project path, run `sync-ctl analyze` to check for supported package managers |
76-
| Incomplete results | Some package managers not fully parsed | Note which ecosystems were scanned and which may be missing |
77-
78-
## Examples
79-
80-
**Full audit with licenses:**
81-
```bash
82-
sync-ctl dependencies . --licenses --agent
83-
```
84-
85-
**Production-only for license compliance:**
86-
```bash
87-
sync-ctl dependencies . --licenses --prod-only --agent
88-
```
89-
90-
**Quick vulnerability check alongside deps:**
91-
```bash
92-
sync-ctl dependencies . --licenses --vulnerabilities --agent
93-
```
46+
| Error | Action |
47+
|-------|--------|
48+
| `No dependencies found` | Run `sync-ctl analyze` to verify supported package managers exist |
49+
| Incomplete results | Note which ecosystems were scanned vs missing |

0 commit comments

Comments
 (0)