curl -L -o json-diff-merger.skill "https://aiskillstore.io/v1/agent/skills/147539f0-7625-4e4d-996b-bf52e4390b48/download?platform=ClaudeCode"
{
"tool": "download_skill",
"arguments": {
"skill_id": "147539f0-7625-4e4d-996b-bf52e4390b48",
"platform": "ClaudeCode"
}
}
{
"mcpServers": {
"skill-store": {
"url": "https://aiskillstore.io/mcp/"
}
}
}
JSON diff, patch (RFC 6902), and merge toolkit with 5 actions: diff, patch, merge, three_way_merge, audit. Zero external dependencies. Self-implemented RFC 6902 JSON Patch ops, 3-way merge with conflict detection.
호환 플랫폼: any
검사 결과: ["메타데이터 경고: 권장 필드 없음: 'requirements' (SKILL.md v2 권장)", "메타데이터 경고: 권장 필드 없음: 'changelog' (SKILL.md v2 권장)"]
✅ 보안 위험 항목이 발견되지 않았습니다.
AI 검수 단계
발견된 문제
{ "verdict": "approved", "risk_level": "low", "summary": "JSON diff/merge 스킬은 선언된 권한을 준수하며, 악의적인 동작이나 외부 통신 징후가 없습니다.", "issues": [], "reasoning": "제공된 스킬 메타데이터, 코드 스니펫 및 정적 분석 결과를 종합적으로 검토한 결과, 해당 스킬은 안전하다고 판단됩니다.\n\n1. **선언된 권한 일치 여부**: 스킬 메타데이터는 `network: false`, `filesystem: false`, `subprocess: false`로 매우 제한적인 권한을 선언하고 있습니다. 제공된 `main.py` 코드 스니펫은 `json`, `sys`, `io`, `copy`와 같은 표준 라이브러리만을 사용하며, JSON 객체를 메모리 내에서 처리하는 `pointer_split`, `pointer_get`, `pointer_set`, `pointer_delete`
이 스킬의 대표적인 입출력 예시입니다. 에이전트는 이 예시를 보고 스킬 호출 방법과 결과 형태를 이해할 수 있습니다.
두 JSON 객체의 차이를 RFC 6902 패치로 생성 / Generate RFC 6902 patch from two JSON objects
{
"a": {
"age": 30,
"name": "Alice",
"role": "user"
},
"action": "diff",
"b": {
"age": 31,
"email": "alice@example.com",
"name": "Alice",
"role": "admin"
}
}
{
"action": "diff",
"meta": {
"adds": 1,
"removes": 0,
"replaces": 2,
"total_ops": 3
},
"ops": [
{
"op": "replace",
"path": "/age",
"value": 31
},
{
"op": "replace",
"path": "/role",
"value": "admin"
},
{
"op": "add",
"path": "/email",
"value": "alice@example.com"
}
]
}
RFC 6902 패치 작업 목록을 문서에 적용 / Apply RFC 6902 patch operations to a document
{
"action": "patch",
"doc": {
"age": 30,
"name": "Alice"
},
"ops": [
{
"op": "replace",
"path": "/age",
"value": 31
},
{
"op": "add",
"path": "/email",
"value": "alice@example.com"
},
{
"op": "remove",
"path": "/name"
}
]
}
{
"action": "patch",
"meta": {
"ops_applied": 3,
"ops_failed": 0
},
"patched": {
"age": 31,
"email": "alice@example.com"
}
}
충돌 없는 두 JSON 객체 병합 / Merge two JSON objects without conflicts
{
"a": {
"name": "Alice",
"role": "admin"
},
"action": "merge",
"b": {
"age": 30,
"email": "alice@example.com"
}
}
{
"action": "merge",
"conflicts": [],
"merged": {
"age": 30,
"email": "alice@example.com",
"name": "Alice",
"role": "admin"
},
"meta": {
"conflict_count": 0,
"merge_strategy": "prefer_a"
}
}
3-way merge로 충돌 감지 및 해결 / Detect and resolve conflicts with 3-way merge
{
"a": {
"user": {
"email": "alice@old.com",
"name": "Alice Smith"
}
},
"action": "three_way_merge",
"b": {
"user": {
"email": "alice@new.com",
"name": "Alice"
}
},
"base": {
"user": {
"email": "alice@old.com",
"name": "Alice"
}
},
"merge_strategy": "prefer_a"
}
{
"action": "three_way_merge",
"conflicts": [
{
"a_value": "alice@old.com",
"b_value": "alice@new.com",
"base_value": "alice@old.com",
"fix_hint": {
"action": "three_way_merge",
"field": "user.email",
"reference": "https://aiskillstore.io/skills/json-diff-merger",
"suggested_replacement": "merge_strategy: prefer_b to use alice@new.com"
},
"path": "/user/email",
"resolution": "kept_a (no change from base in a)"
}
],
"merged": {
"user": {
"email": "alice@old.com",
"name": "Alice Smith"
}
},
"meta": {
"conflict_count": 1,
"merge_strategy": "prefer_a"
}
}
RFC 6902 move/copy 작업 적용 / Apply RFC 6902 move and copy operations
{
"action": "patch",
"doc": {
"baz": 42,
"foo": "bar"
},
"ops": [
{
"from": "/foo",
"op": "copy",
"path": "/foo_copy"
},
{
"from": "/baz",
"op": "move",
"path": "/baz_moved"
}
]
}
{
"action": "patch",
"meta": {
"ops_applied": 2,
"ops_failed": 0
},
"patched": {
"baz_moved": 42,
"foo": "bar",
"foo_copy": "bar"
}
}
JSON 구조 감사 - 깊이, 키 수, 타입 맵 분석 / Audit JSON structure for depth, key count, and type distribution
{
"a": {
"user": {
"id": 1,
"meta": {
"created": "2024-01-01"
},
"name": "Alice",
"tags": [
"admin",
"editor"
]
}
},
"action": "audit"
}
{
"action": "audit",
"audit_report": {
"depth": 3,
"issues": [],
"score": 95,
"total_keys": 6,
"type_map": {
"array": 1,
"integer": 1,
"object": 1,
"string": 3
}
},
"meta": {
"analyzed_keys": 6
}
}
중첩 객체 diff 생성 / Generate diff for nested JSON objects
{
"a": {
"config": {
"features": [
"auth",
"logging"
],
"retry": 3,
"timeout": 30
}
},
"action": "diff",
"b": {
"config": {
"features": [
"auth",
"logging",
"metrics"
],
"retry": 3,
"timeout": 60
}
}
}
{
"action": "diff",
"meta": {
"adds": 0,
"removes": 0,
"replaces": 2,
"total_ops": 2
},
"ops": [
{
"op": "replace",
"path": "/config/timeout",
"value": 60
},
{
"op": "replace",
"path": "/config/features",
"value": [
"auth",
"logging",
"metrics"
]
}
]
}
모든 예시는 에이전트 API로도 조회 가능:
/v1/agent/skills/147539f0-7625-4e4d-996b-bf52e4390b48/schema
아직 리뷰가 없습니다. 첫 번째 리뷰를 남겨보세요!