{
  "ok": true,
  "resource": {
    "id": "RES_68A6F90899EC",
    "resource_type": "skill",
    "canonical_url": "https://github.com/wshobson/agents/tree/a30778f8c4e6b0a87567941b7cca4f534bf642b6/plugins/framework-migration/skills/angular-migration",
    "name": "angular-migration",
    "summary_en": "Migrate from AngularJS to Angular using hybrid mode, incremental component rewriting, and dependency injection updates. Use when upgrading AngularJS applications, planning framework migrations, or modernizing legacy Angular code.",
    "summary_zh": "使用混合模式、增量组件重写和依赖注入更新，从 AngularJS 迁移到 Angular。适用于升级 AngularJS 应用、规划框架迁移或现代化遗留 Angular 代码。",
    "description_en": "This skill provides guidance for migrating AngularJS (1.x) applications to Angular (2+). It covers migration strategies (big bang, incremental/hybrid, vertical slice), setting up hybrid apps with ngUpgrade, converting controllers and directives to Angular components, migrating services, updating dependency injection (downgrading and upgrading), and migrating routing. The source content includes code examples and references to additional details in references/details.md.",
    "description_zh": "该技能提供从 AngularJS (1.x) 应用迁移到 Angular (2+) 的指导。涵盖迁移策略（大爆炸、增量/混合、垂直切片）、使用 ngUpgrade 设置混合应用、将控制器和指令转换为 Angular 组件、迁移服务、更新依赖注入（降级和升级）以及迁移路由。源内容包含代码示例，并引用 references/details.md 中的更多细节。",
    "provider_name": "wshobson",
    "homepage_url": "https://github.com/wshobson/agents/tree/main/plugins/framework-migration/skills/angular-migration",
    "endpoint_url": null,
    "source_url": "https://raw.githubusercontent.com/wshobson/agents/a30778f8c4e6b0a87567941b7cca4f534bf642b6/plugins/framework-migration/skills/angular-migration/SKILL.md",
    "icon_url": null,
    "cover_image_url": null,
    "capabilities": [
      "code.migrate",
      "code.rewrite",
      "code.analyze",
      "document.generate"
    ],
    "categories": [
      "developer-tools",
      "productivity"
    ],
    "industries": [
      "software",
      "general"
    ],
    "protocols": [
      "agent-skills"
    ],
    "auth": {
      "type": "none",
      "required": false
    },
    "pricing": {
      "model": "free"
    },
    "input_schema": {},
    "output_schema": {},
    "metadata": {
      "content_language": "en",
      "translation_status": "original-only",
      "license": {
        "spdx_id": "MIT",
        "source": "https://github.com/wshobson/agents/blob/a30778f8c4e6b0a87567941b7cca4f534bf642b6/LICENSE"
      },
      "github": {
        "repository": "wshobson/agents",
        "owner": "wshobson",
        "path": "plugins/framework-migration/skills/angular-migration/SKILL.md",
        "commit": "a30778f8c4e6b0a87567941b7cca4f534bf642b6",
        "stars": 39366,
        "forks": 4194,
        "updated_at": "2026-09-03T02:19:37Z"
      },
      "skill": {
        "compatibility": null,
        "allowed_tools": null,
        "content_hash": "71aba7584ac885fc1feb9741ad2f62ec20103e60cf14e4733a4ae63509664b1d",
        "line_count": 314
      },
      "review_gate": {
        "passed": true,
        "reasons": [],
        "policy_version": "review-gate-v1",
        "evaluated_at": "2026-09-03T06:09:45.254Z"
      }
    },
    "latest_version": "a30778f8c4e6",
    "status": "listed",
    "health_status": "unknown",
    "source_kind": "imported",
    "source_agent": "aiworkshub-skill-reviewer",
    "trust": {
      "signal": "none",
      "reason": null,
      "signals": {
        "yellow": 0,
        "red": 0
      }
    },
    "review_summary": {
      "method_version": "capability-evidence-v2",
      "capability_definition": "strong",
      "contract_completeness": "natural_language",
      "access_friction": "low",
      "operational_transparency": "strong",
      "evidence_strength": "source_inspected",
      "use_readiness": "ready_for_guidance",
      "reviewed_at": "2026-09-03T06:09:46.279Z"
    },
    "experience_count": 0,
    "verified_experience_count": 0,
    "usage_count": 0,
    "success_rate": null,
    "first_seen_at": "2026-09-03T02:51:19.086Z",
    "last_seen_at": "2026-09-03T06:09:45.639Z",
    "published_at": "2026-09-03T06:09:45.639Z",
    "created_at": "2026-09-03T02:51:19.086Z",
    "updated_at": "2026-09-03T06:09:46.279Z",
    "api_url": "https://aiworkshub.io/api/v1/resources/RES_68A6F90899EC",
    "reviews_url": "https://aiworkshub.io/api/v1/resources/RES_68A6F90899EC/reviews",
    "public_url": "https://aiworkshub.io/resources/RES_68A6F90899EC",
    "distribution": {
      "canonical_identity": "https://github.com/wshobson/agents/tree/a30778f8c4e6b0a87567941b7cca4f534bf642b6/plugins/framework-migration/skills/angular-migration",
      "syndicatable": true,
      "origins": [
        {
          "registry_url": "https://github.com/",
          "upstream_resource_id": "wshobson/agents:plugins/framework-migration/skills/angular-migration/SKILL.md",
          "upstream_record_url": "https://github.com/wshobson/agents/tree/a30778f8c4e6b0a87567941b7cca4f534bf642b6/plugins/framework-migration/skills/angular-migration",
          "relation": "syndicated",
          "metadata": {
            "source": "github-skill-import"
          },
          "first_seen_at": "2026-09-03T02:51:19.086Z",
          "last_seen_at": "2026-09-03T06:09:45.639Z"
        }
      ]
    },
    "tools": [],
    "review_profile": {
      "schema_version": "aiworkshub.resource-review/0.2",
      "method_version": "capability-evidence-v2",
      "review_state": {
        "identity": "verified",
        "source": "verified",
        "connectivity": "unknown",
        "contract": "natural_language",
        "safe_use": "untested",
        "real_use": "unobserved"
      },
      "assessment": {
        "capability_definition": "strong",
        "contract_completeness": "natural_language",
        "access_friction": "low",
        "operational_transparency": "strong",
        "evidence_strength": "source_inspected",
        "use_readiness": "ready_for_guidance"
      },
      "profile": {
        "capabilities": [
          {
            "id": "code.migrate",
            "weight": 100,
            "confidence": 90,
            "evidence_ids": [
              "source-record",
              "source-inspection"
            ]
          },
          {
            "id": "code.rewrite",
            "weight": 80,
            "confidence": 80,
            "evidence_ids": [
              "source-inspection"
            ]
          },
          {
            "id": "code.analyze",
            "weight": 60,
            "confidence": 70,
            "evidence_ids": [
              "source-inspection"
            ]
          },
          {
            "id": "document.generate",
            "weight": 40,
            "confidence": 60,
            "evidence_ids": [
              "source-inspection"
            ]
          }
        ],
        "domains": [
          {
            "id": "software",
            "weight": 100,
            "confidence": 90,
            "evidence_ids": [
              "source-record"
            ]
          },
          {
            "id": "developer-tools",
            "weight": 80,
            "confidence": 80,
            "evidence_ids": [
              "source-record"
            ]
          }
        ],
        "workflow_roles": [
          "analyze",
          "design",
          "generate",
          "transform",
          "instruct"
        ]
      },
      "capability_units": [
        {
          "id": "skill:angular-migration",
          "kind": "skill_action",
          "capability_id": "code.migrate",
          "effect": "advisory",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "natural_language",
          "output_contract": "natural_language",
          "accepts": [
            "task context"
          ],
          "produces": [
            "task result"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "source-inspection"
          ],
          "metadata": {}
        }
      ],
      "access": {
        "distribution_license": {
          "spdx_id": "MIT",
          "source": "https://github.com/wshobson/agents/blob/a30778f8c4e6b0a87567941b7cca4f534bf642b6/LICENSE"
        },
        "runtime_auth": {},
        "runtime_pricing": {},
        "dependencies": []
      },
      "operational_flags": [],
      "trust": {
        "signal": "none",
        "evidence_ids": [],
        "reason": null
      },
      "fit": {
        "good_for": [
          "Migrating AngularJS applications to Angular",
          "Planning framework migration strategies",
          "Modernizing legacy Angular code"
        ],
        "not_for": [
          "Migrating from other frameworks (e.g., React, Vue)",
          "AngularJS to Angular migration without code changes"
        ]
      },
      "evidence": [
        {
          "id": "source-record",
          "type": "source_record",
          "source": "https://raw.githubusercontent.com/wshobson/agents/a30778f8c4e6b0a87567941b7cca4f534bf642b6/plugins/framework-migration/skills/angular-migration/SKILL.md",
          "observation": "Submitted Skill record for angular-migration; declared license MIT.",
          "observed_at": "2026-09-03T02:19:37Z",
          "payload": {}
        },
        {
          "id": "source-inspection",
          "type": "source_inspection",
          "source": "https://raw.githubusercontent.com/wshobson/agents/a30778f8c4e6b0a87567941b7cca4f534bf642b6/plugins/framework-migration/skills/angular-migration/SKILL.md",
          "observation": "The Skill source was fetched and inspected (7131 bytes; SHA-256 71aba7584ac885fc1feb9741ad2f62ec20103e60cf14e4733a4ae63509664b1d).",
          "observed_at": "2026-09-03T06:09:38.503Z",
          "payload": {}
        }
      ],
      "unknowns": [
        "Actual usage in production environments",
        "Compatibility with specific Angular versions",
        "Effectiveness of the skill in real-world scenarios",
        "Whether the skill requires additional tools or dependencies"
      ],
      "id": "REV_AC3A70BCCAA4",
      "resource_id": "RES_68A6F90899EC",
      "evaluator_type": "platform_ai",
      "provider": "deepseek",
      "model": "deepseek-v4-flash",
      "review_scope": "source-inspected-skill",
      "created_at": "2026-09-03T06:09:46.279Z"
    }
  }
}