Skip to content

Commit 7a057f3

Browse files
committed
Merge remote-tracking branch 'origin/main' into feature/ci-pipeline-generation
2 parents 89dd103 + 084630d commit 7a057f3

37 files changed

Lines changed: 1596 additions & 1033 deletions

File tree

.claude-plugin/marketplace.json

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,30 @@
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.0"
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.0",
16+
"version": "0.1.15",
1717
"author": {
1818
"name": "Syncable",
1919
"email": "support@syncable.dev"
2020
},
2121
"homepage": "https://syncable.dev",
2222
"repository": "https://github.com/syncable-dev/syncable-cli",
2323
"license": "MIT",
24-
"keywords": ["syncable", "devops", "security", "deployment", "kubernetes", "docker", "iac"]
24+
"keywords": [
25+
"syncable",
26+
"devops",
27+
"security",
28+
"deployment",
29+
"kubernetes",
30+
"docker",
31+
"iac"
32+
]
2533
}
2634
]
2735
}

CHANGELOG.md

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,97 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66

77
## [Unreleased]
88

9+
## [0.37.1](https://github.com/syncable-dev/syncable-cli/compare/v0.37.0...v0.37.1) - 2026-03-29
10+
11+
### Added
12+
13+
- deprecate chat/agent commands, rebrand CLI as DevOps toolbox
14+
- updated codex/gemini skill path
15+
16+
### Fixed
17+
18+
- install Codex skills to ~/.agents/skills/ per official docs
19+
- rewrite Gemini CLI skill installer to use proper SKILL.md directory format
20+
- rewrite skill descriptions for semantic matching, skip CI for non-Rust changes
21+
22+
### Other
23+
24+
- release v0.37.0
25+
- *(installer)* update README with correct install paths for Claude, Codex, Gemini
26+
27+
## [0.37.1](https://github.com/syncable-dev/syncable-cli/compare/v0.37.0...v0.37.1) - 2026-03-29
28+
29+
### Added
30+
31+
- deprecate chat/agent commands, rebrand CLI as DevOps toolbox
32+
- updated codex/gemini skill path
33+
34+
### Fixed
35+
36+
- install Codex skills to ~/.agents/skills/ per official docs
37+
- rewrite Gemini CLI skill installer to use proper SKILL.md directory format
38+
- rewrite skill descriptions for semantic matching, skip CI for non-Rust changes
39+
40+
### Other
41+
42+
- *(installer)* update README with correct install paths for Claude, Codex, Gemini
43+
44+
## [0.37.0](https://github.com/syncable-dev/syncable-cli/compare/v0.36.0...v0.37.0) - 2026-03-28
45+
46+
### Added
47+
48+
- wire validate command, fix per-directory vuln/dep scanning, add deploy preview/run, and pagination
49+
- updating test cases
50+
- removed .env
51+
- claude skills feature
52+
- rewrite command skills to use --agent flag
53+
- rewrite workflow skills with --agent and cross-step retrieval
54+
- wire --agent flag in command handlers and add Retrieve command
55+
- add --agent flag to 5 scan commands and Retrieve subcommand
56+
- add CLI variants of compression functions
57+
- add resolve_latest() for cross-process ref_id resolution
58+
- *(installer)* add CLI entrypoint with commander, inquirer, ora, chalk
59+
- *(installer)* add update command (re-exports uninstall + install)
60+
- *(installer)* add status command with per-agent skill counting
61+
- *(installer)* add uninstall command with glob removal and Gemini marker cleanup
62+
- *(installer)* add install command with skill writers for all 5 agents
63+
- *(installer)* add prerequisite check and installation modules
64+
- *(installer)* add Cursor, Windsurf, and Gemini format transformers
65+
- *(installer)* add Claude and Codex format transformers
66+
- *(installer)* add agent detection for 5 AI coding agents
67+
- *(installer)* add skill loader with frontmatter parsing
68+
- *(installer)* add constants and utils module with version parsing
69+
- *(skills)* add syncable-deploy-pipeline workflow skill
70+
- *(skills)* add syncable-iac-pipeline workflow skill
71+
- *(skills)* add syncable-security-audit workflow skill
72+
- *(skills)* add syncable-project-assessment workflow skill
73+
- *(skills)* add syncable-platform command skill
74+
- *(skills)* add syncable-optimize command skill
75+
- *(skills)* add syncable-validate command skill
76+
- *(skills)* add syncable-dependencies command skill
77+
- *(skills)* add syncable-vulnerabilities command skill
78+
- *(skills)* add syncable-security command skill
79+
- *(skills)* add syncable-analyze command skill
80+
- early agu-ui protocol added
81+
82+
### Fixed
83+
84+
- add failures/diagnostics fields to find_issues_array
85+
- *(installer)* add verbose logging, forward all flags in update command
86+
87+
### Other
88+
89+
- ignore 6 new transitive dependency advisories (aws-lc-sys, rustls-webpki)
90+
- agent output pipeline implementation plan (10 tasks)
91+
- agent output pipeline design spec
92+
- *(installer)* add professional npm README with logo and metadata
93+
- *(installer)* scaffold npx installer project
94+
- add npx installer implementation plan
95+
- add npx installer design spec
96+
- scaffold skills directory structure
97+
- add syncable CLI skills implementation plan
98+
- add syncable CLI skills design spec
99+
9100
## [0.36.0](https://github.com/syncable-dev/syncable-cli/compare/v0.35.1...v0.36.0) - 2026-03-15
10101

11102
### Fixed

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "syncable-cli"
3-
version = "0.36.0"
3+
version = "0.37.1"
44
edition = "2024"
55
rust-version = "1.88" # MSRV - AWS SDK requires 1.88
66
authors = ["Syncable Team"]

azure-pipelines.yml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
trigger:
2+
branches:
3+
include:
4+
- main
5+
tags:
6+
include:
7+
- v*
8+
pr:
9+
branches:
10+
include:
11+
- main
12+
schedules:
13+
- cron: '{{CRON_SCHEDULE}}'
14+
displayName: Scheduled build
15+
branches:
16+
include:
17+
- main
18+
always: true
19+
pool:
20+
vmImage: ubuntu-latest
21+
steps:
22+
- script: rustup default stable
23+
displayName: Set up runtime
24+
- task: Cache@2
25+
displayName: Cache dependencies
26+
inputs:
27+
key: cargo | $(Agent.OS) | **/Cargo.lock
28+
path: |-
29+
~/.cargo/registry/index
30+
~/.cargo/registry/cache
31+
~/.cargo/git/db
32+
target/
33+
restoreKeys: cargo | $(Agent.OS)
34+
- script: cargo fetch
35+
displayName: Install dependencies
36+
- script: cargo clippy -- -D warnings
37+
displayName: Lint
38+
- script: cargo test
39+
displayName: Test
40+
- script: cargo build --release
41+
displayName: Build
42+
- script: docker build -t {{REGISTRY_URL}}/{{IMAGE_NAME}}:$(Build.SourceVersion) .
43+
displayName: Build Docker image
44+
- script: |-
45+
curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b /usr/local/bin
46+
trivy image --exit-code 1 --severity CRITICAL,HIGH --format sarif --output trivy-results.sarif {{REGISTRY_URL}}/{{IMAGE_NAME}}:$(Build.SourceVersion)
47+
displayName: Scan image (Trivy)
48+
- script: |-
49+
curl -sSfL https://github.com/gitleaks/gitleaks/releases/latest/download/gitleaks_linux_x64.tar.gz | tar xz -C /usr/local/bin
50+
gitleaks detect --source . --exit-code 1
51+
displayName: Secret scan (Gitleaks)
52+
env:
53+
GITHUB_TOKEN: $(GITHUB_TOKEN)
54+
- task: PublishBuildArtifacts@1
55+
displayName: Upload artifact
56+
inputs:
57+
artifactName: syncable-cli
58+
pathToPublish: target/release/

installer/.claude-plugin/marketplace.json

Lines changed: 0 additions & 27 deletions
This file was deleted.

installer/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
node_modules/
22
dist/
33
skills/
4+
!plugins/syncable-cli-skills/skills/

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.5",
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",
Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
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.0",
4+
"version": "0.1.15",
55
"author": {
66
"name": "Syncable",
77
"email": "support@syncable.dev"
88
},
99
"homepage": "https://syncable.dev",
1010
"license": "MIT",
11-
"keywords": ["syncable", "devops", "security", "deployment", "kubernetes", "docker", "iac"]
11+
"keywords": [
12+
"syncable",
13+
"devops",
14+
"security",
15+
"deployment",
16+
"kubernetes",
17+
"docker",
18+
"iac"
19+
]
1220
}
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
---
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"
3+
---
4+
5+
## Overview
6+
7+
Detect a project's tech stack — languages, frameworks, runtimes, package managers, dependencies, Docker presence, monorepo structure. Foundation command; most workflows start here.
8+
9+
## Quick Reference
10+
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` |
16+
17+
## Steps
18+
19+
### 1. Run analysis
20+
21+
```bash
22+
sync-ctl analyze <PATH> --agent
23+
```
24+
25+
**Success criteria:** JSON output with `summary` and `full_data_ref` fields present.
26+
27+
### 2. Report to user
28+
29+
Prioritize: primary language, main framework, runtime version, Docker/K8s presence.
30+
31+
### 3. Drill into details (if needed)
32+
33+
Save the `full_data_ref`. Use `sync-ctl retrieve` — do NOT re-run analyze:
34+
35+
```bash
36+
sync-ctl retrieve <ref_id> --query "section:frameworks"
37+
sync-ctl retrieve <ref_id> --query "section:languages"
38+
sync-ctl retrieve <ref_id> --query "project:<name>" # monorepos
39+
sync-ctl retrieve <ref_id> --query "language:Go"
40+
sync-ctl retrieve <ref_id> --query "framework:React"
41+
```
42+
43+
**Available queries:** `section:summary`, `section:frameworks`, `section:languages`, `language:<name>`, `framework:<name>`, `project:<name>`, `compact:true`
44+
45+
## Error Handling
46+
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 |

0 commit comments

Comments
 (0)