JSON-Rohbericht maschinenlesbar
{
"data": {
"repo": {
"topics": [
"claude-code",
"typescript",
"boilerplate",
"productivity",
"ai-agents",
"skills",
"agentic-ai",
"agentic-workflow",
"developer-tools",
"agent-skills",
"quality-gates",
"llm-orchestration"
],
"is_fork": false,
"size_kb": 4540,
"has_wiki": true,
"homepage": null,
"languages": {
"Shell": 973,
"JavaScript": 45287,
"TypeScript": 280
},
"pushed_at": "2026-07-19T08:00:15Z",
"created_at": "2025-07-27T09:47:51Z",
"owner_type": "User",
"updated_at": "2026-07-19T07:58:28Z",
"description": "Agentic coding TypeScript boilerplate for Claude Code: sub-agent workflows with built-in quality checks and context engineering.",
"is_archived": false,
"is_disabled": false,
"license_spdx": "MIT",
"default_branch": "main",
"license_spdx_raw": "MIT",
"primary_language": "JavaScript",
"significant_languages": [
"JavaScript"
]
},
"owner": {
"blog": "https://www.norsica.jp/",
"name": null,
"type": "User",
"login": "shinpr",
"company": null,
"location": "Tokyo, Japan",
"followers": 69,
"avatar_url": "https://avatars.githubusercontent.com/u/52246947?v=4",
"created_at": "2019-06-26T13:27:18Z",
"is_verified": null,
"public_repos": 22,
"account_age_days": 2585
},
"license": {
"state": "standard",
"spdx_id": "MIT",
"raw_spdx": "MIT",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v1.25.4",
"kind": "patch",
"published_at": "2026-07-19T08:00:15Z"
},
{
"tag": "v1.25.3",
"kind": "patch",
"published_at": "2026-07-16T07:11:02Z"
},
{
"tag": "v1.25.2",
"kind": "patch",
"published_at": "2026-07-06T22:04:26Z"
},
{
"tag": "v1.25.1",
"kind": "patch",
"published_at": "2026-06-29T10:10:34Z"
},
{
"tag": "v1.25.0",
"kind": "minor",
"published_at": "2026-06-25T02:22:32Z"
},
{
"tag": "v1.24.2",
"kind": "patch",
"published_at": "2026-06-23T10:42:15Z"
},
{
"tag": "v1.24.1",
"kind": "patch",
"published_at": "2026-06-21T03:07:36Z"
},
{
"tag": "v1.24.0",
"kind": "minor",
"published_at": "2026-06-18T13:10:01Z"
},
{
"tag": "v1.23.5",
"kind": "patch",
"published_at": "2026-06-14T05:46:37Z"
},
{
"tag": "v1.23.4",
"kind": "patch",
"published_at": "2026-06-09T08:06:47Z"
},
{
"tag": "v1.23.3",
"kind": "patch",
"published_at": "2026-06-06T06:55:21Z"
},
{
"tag": "v1.23.2",
"kind": "patch",
"published_at": "2026-06-01T13:09:52Z"
},
{
"tag": "v1.23.1",
"kind": "patch",
"published_at": "2026-05-28T02:24:11Z"
},
{
"tag": "v0.23.0",
"kind": "minor",
"published_at": "2026-05-22T05:16:14Z"
},
{
"tag": "v1.22.1",
"kind": "patch",
"published_at": "2026-05-16T09:26:23Z"
},
{
"tag": "v1.22.0",
"kind": "minor",
"published_at": "2026-05-10T06:52:31Z"
},
{
"tag": "v1.21.0",
"kind": "minor",
"published_at": "2026-05-03T05:05:23Z"
},
{
"tag": "v1.20.9",
"kind": "patch",
"published_at": "2026-05-01T11:42:38Z"
},
{
"tag": "v1.20.8",
"kind": "patch",
"published_at": "2026-04-16T15:29:59Z"
},
{
"tag": "v1.20.7",
"kind": "patch",
"published_at": "2026-04-12T03:11:00Z"
},
{
"tag": "v1.20.6",
"kind": "patch",
"published_at": "2026-04-10T10:20:18Z"
},
{
"tag": "v1.20.5",
"kind": "patch",
"published_at": "2026-04-05T22:57:49Z"
},
{
"tag": "v1.20.4",
"kind": "patch",
"published_at": "2026-04-05T09:27:47Z"
},
{
"tag": "v1.20.3",
"kind": "patch",
"published_at": "2026-04-04T05:00:06Z"
},
{
"tag": "v1.20.2",
"kind": "patch",
"published_at": "2026-04-03T02:45:15Z"
},
{
"tag": "v1.20.1",
"kind": "patch",
"published_at": "2026-04-02T08:57:47Z"
},
{
"tag": "v1.20.0",
"kind": "minor",
"published_at": "2026-04-01T06:03:36Z"
},
{
"tag": "v1.19.1",
"kind": "patch",
"published_at": "2026-03-30T14:45:23Z"
},
{
"tag": "v1.19.0",
"kind": "minor",
"published_at": "2026-03-30T10:22:12Z"
},
{
"tag": "v1.18.7",
"kind": "patch",
"published_at": "2026-03-30T04:16:34Z"
},
{
"tag": "v1.18.6",
"kind": "patch",
"published_at": "2026-03-29T13:37:21Z"
},
{
"tag": "v1.18.5",
"kind": "patch",
"published_at": "2026-03-29T10:16:31Z"
},
{
"tag": "v1.18.4",
"kind": "patch",
"published_at": "2026-03-28T09:19:29Z"
},
{
"tag": "v1.18.3",
"kind": "patch",
"published_at": "2026-03-26T13:52:22Z"
},
{
"tag": "v1.18.2",
"kind": "patch",
"published_at": "2026-03-26T04:39:09Z"
},
{
"tag": "v1.18.1",
"kind": "patch",
"published_at": "2026-03-25T13:16:49Z"
},
{
"tag": "v1.18.0",
"kind": "minor",
"published_at": "2026-03-21T08:43:58Z"
},
{
"tag": "v1.17.1",
"kind": "patch",
"published_at": "2026-03-19T05:28:45Z"
},
{
"tag": "v1.17.0",
"kind": "minor",
"published_at": "2026-03-08T07:39:01Z"
},
{
"tag": "v1.16.3",
"kind": "patch",
"published_at": "2026-03-05T09:01:54Z"
},
{
"tag": "v1.16.2",
"kind": "patch",
"published_at": "2026-03-03T10:20:35Z"
},
{
"tag": "v1.16.1",
"kind": "patch",
"published_at": "2026-02-23T07:36:13Z"
},
{
"tag": "v1.16.0",
"kind": "minor",
"published_at": "2026-02-14T05:30:38Z"
},
{
"tag": "v1.15.1",
"kind": "patch",
"published_at": "2026-02-13T05:53:50Z"
},
{
"tag": "v1.15.0",
"kind": "minor",
"published_at": "2026-02-12T09:04:23Z"
},
{
"tag": "v1.14.15",
"kind": "patch",
"published_at": "2026-02-10T12:34:56Z"
},
{
"tag": "v0.14.14",
"kind": "patch",
"published_at": "2026-02-04T12:08:19Z"
},
{
"tag": "v1.14.13",
"kind": "patch",
"published_at": "2026-02-02T05:29:18Z"
},
{
"tag": "v1.14.12",
"kind": "patch",
"published_at": "2026-01-23T02:49:06Z"
},
{
"tag": "v1.14.11",
"kind": "patch",
"published_at": "2026-01-21T02:53:58Z"
},
{
"tag": "v1.14.10",
"kind": "patch",
"published_at": "2026-01-20T12:20:40Z"
},
{
"tag": "v1.14.9",
"kind": "patch",
"published_at": "2026-01-16T04:35:01Z"
},
{
"tag": "v1.14.8",
"kind": "patch",
"published_at": "2026-01-14T02:57:19Z"
},
{
"tag": "v1.14.7",
"kind": "patch",
"published_at": "2026-01-12T06:37:15Z"
},
{
"tag": "v1.14.6",
"kind": "patch",
"published_at": "2026-01-09T08:50:16Z"
},
{
"tag": "v1.14.5",
"kind": "patch",
"published_at": "2026-01-08T01:10:22Z"
},
{
"tag": "v1.14.4",
"kind": "patch",
"published_at": "2026-01-06T12:45:27Z"
},
{
"tag": "v0.14.3",
"kind": "patch",
"published_at": "2026-01-05T09:15:43Z"
},
{
"tag": "v1.14.2",
"kind": "patch",
"published_at": "2025-12-31T07:00:58Z"
},
{
"tag": "v1.14.1",
"kind": "patch",
"published_at": "2025-12-30T06:31:03Z"
},
{
"tag": "v1.14.0",
"kind": "minor",
"published_at": "2025-12-26T11:21:45Z"
},
{
"tag": "v1.13.1",
"kind": "patch",
"published_at": "2025-12-21T14:33:52Z"
},
{
"tag": "v1.13.0",
"kind": "minor",
"published_at": "2025-12-21T03:10:19Z"
},
{
"tag": "v1.12.1",
"kind": "patch",
"published_at": "2025-12-19T09:33:40Z"
},
{
"tag": "v1.12.0",
"kind": "minor",
"published_at": "2025-12-19T08:30:52Z"
},
{
"tag": "v1.11.3",
"kind": "patch",
"published_at": "2025-12-18T01:05:21Z"
},
{
"tag": "v1.11.2",
"kind": "patch",
"published_at": "2025-12-11T07:52:23Z"
},
{
"tag": "v1.11.1",
"kind": "patch",
"published_at": "2025-12-07T06:09:07Z"
},
{
"tag": "v1.11.0",
"kind": "minor",
"published_at": "2025-12-05T04:21:14Z"
},
{
"tag": "v1.10.0",
"kind": "minor",
"published_at": "2025-12-03T01:29:27Z"
},
{
"tag": "v1.9.3",
"kind": "patch",
"published_at": "2025-11-30T21:12:44Z"
},
{
"tag": "v1.9.2",
"kind": "patch",
"published_at": "2025-11-30T12:18:17Z"
},
{
"tag": "v1.9.1",
"kind": "patch",
"published_at": "2025-11-24T14:37:11Z"
},
{
"tag": "v1.9.0",
"kind": "minor",
"published_at": "2025-11-07T01:18:26Z"
},
{
"tag": "v1.8.0",
"kind": "minor",
"published_at": "2025-10-26T12:31:29Z"
},
{
"tag": "v1.7.17",
"kind": "patch",
"published_at": "2025-10-18T15:11:34Z"
},
{
"tag": "v1.7.16",
"kind": "patch",
"published_at": "2025-10-13T02:55:22Z"
},
{
"tag": "v1.7.15",
"kind": "patch",
"published_at": "2025-10-12T08:06:11Z"
},
{
"tag": "v1.7.14",
"kind": "patch",
"published_at": "2025-10-10T23:55:50Z"
},
{
"tag": "v1.7.13",
"kind": "patch",
"published_at": "2025-10-07T04:36:53Z"
},
{
"tag": "v1.7.12",
"kind": "patch",
"published_at": "2025-09-30T01:00:47Z"
},
{
"tag": "v1.7.11",
"kind": "patch",
"published_at": "2025-09-28T08:37:55Z"
},
{
"tag": "v1.7.10",
"kind": "patch",
"published_at": "2025-09-24T10:42:04Z"
},
{
"tag": "v1.7.9",
"kind": "patch",
"published_at": "2025-09-09T13:39:21Z"
},
{
"tag": "v1.7.8",
"kind": "patch",
"published_at": "2025-09-08T02:42:08Z"
},
{
"tag": "v1.7.7",
"kind": "patch",
"published_at": "2025-09-05T05:12:42Z"
},
{
"tag": "v1.7.6",
"kind": "patch",
"published_at": "2025-08-31T14:45:32Z"
},
{
"tag": "v1.7.5",
"kind": "patch",
"published_at": "2025-08-30T05:10:26Z"
},
{
"tag": "v1.7.4",
"kind": "patch",
"published_at": "2025-08-29T04:13:50Z"
},
{
"tag": "v1.7.3",
"kind": "patch",
"published_at": "2025-08-28T05:56:36Z"
},
{
"tag": "v1.7.2",
"kind": "patch",
"published_at": "2025-08-28T01:12:13Z"
},
{
"tag": "v1.7.1",
"kind": "patch",
"published_at": "2025-08-26T14:33:23Z"
},
{
"tag": "v1.7.0",
"kind": "minor",
"published_at": "2025-08-24T21:26:54Z"
},
{
"tag": "v1.6.7",
"kind": "patch",
"published_at": "2025-08-20T05:29:46Z"
},
{
"tag": "v1.6.6",
"kind": "patch",
"published_at": "2025-08-19T07:34:36Z"
},
{
"tag": "v1.6.5",
"kind": "patch",
"published_at": "2025-08-17T08:45:26Z"
},
{
"tag": "v1.6.4",
"kind": "patch",
"published_at": "2025-08-15T14:15:48Z"
},
{
"tag": "v.1.6.3",
"kind": "other",
"published_at": "2025-08-15T02:24:28Z"
},
{
"tag": "v1.6.2",
"kind": "patch",
"published_at": "2025-08-10T12:23:31Z"
},
{
"tag": "v1.6.1",
"kind": "patch",
"published_at": "2025-08-09T09:29:22Z"
}
],
"recent_commits": [
{
"oid": "13c65498db9066f158db5d1151b6040b2dad6196",
"body": "Refine evidence-driven skill execution guidance",
"is_bot": false,
"headline": "Merge pull request #186 from shinpr/refine/prompt-principles-skills-en",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-07-19T07:58:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0df77656baf2e89243fc815d624613203282a764",
"body": null,
"is_bot": false,
"headline": "chore: release 1.25.4",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-19T07:56:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "31408865d44fa673f0580dbae0ec355ac98e6605",
"body": null,
"is_bot": false,
"headline": "refine(skills): mirror execution guidance into ja",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-19T07:55:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "191ec1340d526c5d0f25b1b5ce5ed0b8802db6f4",
"body": null,
"is_bot": false,
"headline": "refine English skill execution guidance",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-19T07:11:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7f59a3933e7cd7309de5eddeaff16c3c8288715d",
"body": "…view-ja\n\nMirror adopted design validity review into ja sources (1.25.3)",
"is_bot": false,
"headline": "Merge pull request #185 from shinpr/refine/adopted-design-validity-re…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-07-16T07:09:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2dba7c2a7a6b57a41790ae56751fb230b7737add",
"body": "…rces\n\nTranslate the adopted design validity review into the Japanese sources,\nmatching existing tone and terminology and avoiding literal renderings:\n\n- document-reviewer: requirements_verbatim / confirmed_decisions inputs,\n effective-requirements derivation, the confirmed_decisions clause in the\n\n[…]\n integrate the 1.25.3 CHANGELOG entry so it covers both the adopted\ndesign validity review and the skill-optimization refinements.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine(design-doc): mirror adopted design validity review into ja sou…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-16T07:08:31Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "684bee977478fa29933eac1b62422beaf8270adc",
"body": "…ew-en\n\nRefine skill-optimization patterns and wire through creator/reviewer (1.25.3)",
"is_bot": false,
"headline": "Merge pull request #184 from shinpr/feat/adopted-design-validity-revi…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-07-16T06:09:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "882b2fff82ef7575ec4cf054c56306f690db3b4f",
"body": "Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.25.3",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-16T05:18:19Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "5d7f0c7cee7abaed58dd3700319f8a2780d66d3a",
"body": "…ements into ja sources\n\nTranslate the English skill-optimization refinements into the Japanese\nsources, matching existing tone and terminology and avoiding literal\nrenderings:\n\n- BP-002: least-restrictive sufficient criterion with precision\n contribution / constraint cost and resolution steps; sou\n[…]\niewer: constraintNecessity balance check (content-observable)\n\nVerified en/ja skills-index consistency and ja agent JSON validity.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine(skill-optimization): mirror rashomon prompt-optimization refin…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-16T04:58:47Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f53335cc9d95a1d134c6f6eced5e6236423fda46",
"body": "…ments (en)\n\nPort the latest rashomon prompt-optimization BP refinements into the\nEnglish skill-optimization skill and wire them through the consuming\nagents:\n\n- BP-002: least-restrictive sufficient criterion with precision\n contribution / constraint cost; decompose the dense cell into\n resolution\n[…]\n\n- skill-reviewer: constraintNecessity balance check (content-observable)\n\nScope: English sources only; ja/active mirror deferred.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine(skill-optimization): adopt rashomon prompt-optimization refine…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-16T04:17:50Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "334df1c37f3e2c491ca74fbdc8e13e10c70b3389",
"body": "Port the Adopted design validity check from the plugin distribution\n(claude-code-workflows PR #147) into the -en sources, selectively so\nthis repo's already-ahead checks (behavioral claim, fact-disposition\nsemantic alignment, cross-layer assumptions, minimal-surface detail)\nand its TypeScript-specia\n[…]\nnvocation and pass the confirmed\n scope and user answers to the technical-designer.\n\nScope: -en only; ja sync is a separate step.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(design-doc): add adopted design validity review (en)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-15T23:08:36Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ee61a6abc39286e93d3764a76fea78bb33c6d4e3",
"body": "…mptions\n\nrefine(design-doc): evidence-backed behavioral claim verification",
"is_bot": false,
"headline": "Merge pull request #183 from shinpr/refine/design-doc-behavioral-assu…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-07-06T22:01:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2401ce19b2431f798831824ac90c75006697d475",
"body": "Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.25.2",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-06T21:59:25Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "05fffcf70385e674c21b56f58555412a08b28a84",
"body": "Port the evidence-backed behavioral claim verification into the Japanese\nsources so ja matches en end-to-end (generator, template, reviewer).\n\n- technical-designer(+frontend): new \"振る舞いに関する主張の検証\" step under\n Existing Code Investigation, plus the same compressions (skill-cue collapse,\n Change Impac\n[…]\npanese claims;\n\"再掲\" (not 言い換え) preserves the shared lookup key.\n\ncheck:skills-index passes; en/ja consistent across all 28 skills.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine(design-doc): mirror behavioral claim verification into ja sources",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-06T21:57:50Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f8f49c73925712f0fb8efe0ffe4d987c99c60413",
"body": "… (en)\n\nAdd an assumption check so behavioral/factual claims a design relies on\n(framework defaults, capabilities assumed provided, features assumed\nimplemented) are each backed by evidence at design time or bound to a\nfollow-up, running end-to-end across generator, template, and reviewer.\n\n- techni\n[…]\nstore the formal\nSerialized Format / Consumer Parse Rule terms in the template to keep the\ndownstream contract vocabulary aligned.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine(design-doc): add evidence-backed behavioral claim verification…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-07-06T21:31:24Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "76324fea4d69fe9501b327227af237405fa15566",
"body": "…dependency-handling\n\nrefine(task-executor): add Unimplemented Dependency Handling rule",
"is_bot": false,
"headline": "Merge pull request #182 from shinpr/feat/task-executor-unimplemented-…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-29T10:09:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6c2e91898240dde07910b1043068e97d11feafc5",
"body": "Add Unimplemented Dependency Handling rule to task-executor / -frontend\n(en/ja). See CHANGELOG for details.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.25.1",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-29T09:53:28Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "d0c1da52fba95e14101c091cb4a4233404a5cb10",
"body": "…ja sources\n\nPort the Unimplemented Dependency Handling rule to the Japanese\nsource agents, matching the files' established tone and terminology\n(代替 for stand-in, 垂直スライス for vertical slice, Step4 中核メカニズム\n保全チェック, 鉄則; Design Doc / UI Spec / Target Files / Investigation\nNotes kept in English per file c\n[…]\n\n- Keep \"exact undecided decision\" precision as 具体的な未決の判断.\n\nKeeps both ja agents in sync with the en sources committed in 7fd38a5.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine(task-executor): mirror Unimplemented Dependency Handling into …",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-29T09:51:07Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "7fd38a518578bb51919c1c54305b6605400238c3",
"body": "Define how the executor handles a dependency that is absent or\nunimplemented. A missing dependency is a stop condition only when\npreserving the required contract needs it and no local, reversible\nconstruct can stand in:\n\n- Establish the required contract from an already-read source first;\n when the\n[…]\nutor.md and\nagents-en/task-executor-frontend.md (frontend adapts terminology:\nUI Spec, component hierarchy / data flow direction).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine(task-executor): add Unimplemented Dependency Handling rule",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-29T09:01:39Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f44045ef56b8d42117898b0e5c0acfa9287e2c5b",
"body": "docs(readme): list llm-friendly-context in the Applied Skills table",
"is_bot": false,
"headline": "Merge pull request #181 from shinpr/docs/list-llm-friendly-context-skill",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-25T06:10:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "19f056c0e6eeb4ee1c6d7cb35588061e2d07dc10",
"body": "The llm-friendly-context skill (released in #180 / v1.25.0) was missing\nfrom the Applied Skills table. It governs the clarity of LLM-facing\noutput — prompts, handoffs, and generated artifacts — which is an applied\ncontext-engineering activity, so it belongs in the table. Added to both\nREADME.md and README.ja.md.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(readme): list llm-friendly-context in the Applied Skills table",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-25T06:10:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "2440f36b6d43e4cf185d9461c531b1c81cea54d1",
"body": "feat: add llm-friendly-context skill and wire into artifact-producing agents",
"is_bot": false,
"headline": "Merge pull request #180 from shinpr/feat/add-llm-friendly-context-skill",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-25T02:21:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "064ff374841b054e154dcb68e6824ddab973fb21",
"body": "The 1.25.0 entry predated the orchestrator-command wiring; widen its scope to\n(agents, skills, commands) and record that the 15 orchestrator commands invoke\nllm-friendly-context before constructing Agent prompts, handoffs, or artifacts.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(changelog): note commands-layer wiring in the 1.25.0 entry",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-25T02:20:57Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "0f203c8f7a4544c94cdfa24f5637367bac82faef",
"body": "…doff construction points (en/ja)\n\nOrchestrator commands construct Agent prompts, hand off data between\nsub-agents, and write generated artifacts, so they invoke the\nllm-friendly-context skill before doing so.\n\n- Add the skill-execution line to the 15 orchestrator commands that delegate\n via the Ag\n[…]\n refine-skill / sync-skills excluded (skill-management\n utilities; the first two run on the more detailed skill-authoring skills)\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(commands): apply llm-friendly-context at orchestrator prompt/han…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-25T02:19:46Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "8a7db31e13e8b7dd9243eca181e9caa71d4ab291",
"body": "Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.25.0",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-25T01:59:31Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "a1d45d117da003ea4fe4f49eb719d3a8bc6ea5da",
"body": "…o Japanese assets (ja)\n\n- Port the new llm-friendly-context skill into skills-ja and register it in\n the Japanese skills-index, mirroring the English side with natural Japanese\n (technical terms kept in English, translated H2 headings matching the index)\n- Wire the skill into the same 11 artifact\n[…]\niguate the referenced-rows wording, naturalize the\n goal sentence, and unify output-structure terminology across SKILL and agents\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(agents,skills): mirror llm-friendly-context skill and wiring int…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-25T01:58:15Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ee75895525de82ad963d6dee4923811d1ef671d1",
"body": "…ifact-producing agents (en)\n\n- Add llm-friendly-context skill: clarifies inputs, outputs, success\n criteria, decisions, and unresolved conditions so downstream agents\n execute without guessing; register it in skills-index\n- Wire the skill into 11 artifact-producing agents via skills frontmatter,\n\n[…]\neria\n- llm-friendly-context: add a scope boundary vs documentation-criteria and\n a consistent shape for blocking unresolved items\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(agents,skills): add llm-friendly-context skill and wire into art…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-25T01:33:25Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d016c60062df5a7abd82a1ba04663b7e238c2962",
"body": "…nd-spec-completeness\n\nrefine: strengthen failure-mode and spec-completeness coverage in planning agents",
"is_bot": false,
"headline": "Merge pull request #179 from shinpr/refine/failure-mode-propagation-a…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-23T10:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8565d76c42ad61f5e3d2e565603b9d47935e3cc9",
"body": "Bump patch version and record the failure-mode / spec-completeness coverage\nchanges in the changelog.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.24.2",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-23T10:38:36Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "dee42a6c00e33944813505816c741215a9368349",
"body": "…age to ja\n\nJapanese (-ja) counterpart of the prior -en change, keeping wording, tone, and\nterminology consistent across both locales.\n\n- Failure Mode Checklist: add ninth domain-independent category\n `missing-sort-key ordering` (work-planner, document-reviewer, plan-template)\n- AC drafting: add a \n[…]\nrovement, taskFiles) kept in English; prose mapped to the\nexisting ja vocabulary.\n\nScope: Japanese (-ja) agent/skill sources only.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine(agents,skills): apply failure-mode and spec-completeness cover…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-23T10:37:17Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "c2d89e93e3474f3cd1a6530cc730ebe23a505378",
"body": "…coverage\n\nClose gaps where a feature's combinatorial shape (interacting modes, ordering\nof absent values, reset/clear lifecycle) could pass through planning,\ndecomposition, and review without becoming a verifiable contract.\n\n- Failure Mode Checklist: add ninth domain-independent category\n `missing\n[…]\ntaskFiles are absent so AC-less obligations are not silently treated as\n verified\n\nScope: English (-en) agent/skill sources only.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine(agents,skills): strengthen failure-mode and spec-completeness …",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-23T10:23:55Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "bc59a9affd5f415f66495ac642ec4c66a333b3a3",
"body": "fix(skills): resolve cross-skill rule inconsistencies (1.24.1)",
"is_bot": false,
"headline": "Merge pull request #178 from shinpr/fix/skill-rule-inconsistencies",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-21T03:06:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "795995e803a421e129046cb9d931d5c1b14a58f7",
"body": "- documentation-criteria: align the ADR file-count matrix with the automation rule (ADR conditional at 6+; Design Doc + Work Plan required at 3-5)\n- coding-standards / typescript-rules: unify the comment policy (code-first, comment the \"why\")\n- frontend-technical-spec: add the Error Boundary exception to the class-component rule\n\nApplied across en/ja. Bumps version to 1.24.1.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(skills): resolve cross-skill rule inconsistencies",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-21T03:05:38Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "1700b1af82918c158ed80111e0b9d8209343fc68",
"body": "Observable-contract propagation + serialized boundaries; JA localization, naturalness & self-contained prompts (1.24.0)",
"is_bot": false,
"headline": "Merge pull request #177 from shinpr/feat/observable-contracts",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-18T13:09:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7a8544a72b133c616dbdef1be908a6c68991374f",
"body": "Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.24.0",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-18T12:57:23Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "7bbe7b7676ccbf5da3c89a83e053efd5523377f1",
"body": "Make each worker agent and skill self-contained: replace references to\nother agents by name (input provenance, downstream consumers) and\ncross-skill name pointers with generic role/step descriptions, preserving\nfunctional intent. task-decomposer keeps only the file-naming convention\n(no routing-dest\n[…]\n(commands,\nsubagents-orchestration-guide, task-analyzer), self references, and\nwithin-skill references are intentionally retained.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refactor(agents,skills): drop cross-agent/skill name references (en+ja)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-18T12:56:07Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "8b7b35480c331616db6aa1529d4802d481354b99",
"body": "…ss (ja)\n\n- Port the observable-contract propagation + serialized-boundary changes into\n the Japanese assets (work-planner, task-decomposer, task-executor(-frontend),\n document-reviewer, code-reviewer, technical-designer(-frontend); plan/task/\n design templates), mirroring the English side.\n- Cor\n[…]\n headings unchanged; check:skills-index consistent across en/ja.\nCross-agent/skill reference cleanup deferred to a separate sweep.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore(agents,skills,commands): Japanese localization + naturalness pa…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-18T12:28:44Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b720d2cbbeeda47dde98259926238f06e8e23bcd",
"body": "…ndaries (en)\n\nPromote Design Doc binding observable contracts from coverage tracking to an\nenforced propagation lane carried verbatim across plan -> task -> executor ->\nreview, mirroring the existing ADR Bindings mechanism.\n\n- Reference Contracts: column/label set & order, derived-display rules, an\n[…]\niance_violation\n with explicit field mapping at both pre-implementation and exit gate.\n\ncheck:skills-index: 26 skills consistent.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(agents,skills): observable-contract propagation + serialized bou…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-18T10:01:12Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "4de56bb32858313e795a7e2180cffc4bce769d43",
"body": "…-modernization\n\nAdjacent-case sweep, frontend modernization, and coverage reframe (1.23.5)",
"is_bot": false,
"headline": "Merge pull request #176 from shinpr/feat/adjacent-case-sweep-frontend…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-14T05:45:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3dbd611d5312a8eb003cc25e3ee76ab72ba0988f",
"body": null,
"is_bot": false,
"headline": "chore: release 1.23.5",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-14T05:43:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "070f07558a80ca005b093f0f0e5cbf92583bfaf7",
"body": "…erage reframe (ja)\n\nJapanese counterpart of the English changes, kept in sync with existing ja\nterminology. Structural field names, enum tokens, and section headings stay in\nEnglish (Change Category / Target Files / Investigation Notes / adjacent_residual\n/ bug-fix etc.) because the executor extrac\n[…]\nADR\n reference so the index matches the updated skills.\n- Compact the multi-line JSON examples across agents to the inline style.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(agents,skills): adjacent-case sweep, frontend modernization, cov…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-14T05:42:01Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d43786f1aee6f6b0448cba0ce1d0a120965fb024",
"body": "…erage reframe (en)\n\nAdjacent-case sweep\n- task-decomposer: classify a task's Change Category (bug-fix / regression /\n state-change / boundary-change) and extend Investigation Targets with the\n adjacent files and both-side boundary owners.\n- task-executor (+ frontend): field-triggered Adjacent Cas\n[…]\ngling ADR reference.\n\nJSON examples\n- Compact the multi-line JSON examples across agents to the inline style\n (all blocks parse).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(agents,skills): adjacent-case sweep, frontend modernization, cov…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-14T05:10:59Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "024dd5ab05ea364193f97372bb0334bbcf32a90b",
"body": "chore: bump CI action pins to latest major versions",
"is_bot": false,
"headline": "Merge pull request #175 from shinpr/chore/bump-ci-action-pins",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-12T23:34:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e4423e421ff2534e0ae37b156d946dba2417fc42",
"body": "setup-node v6 auto-enables npm caching when a packageManager field is\npresent, which requires a committed lock file. This repo intentionally\ngitignores package-lock.json and uses `npm install`, so disable the\nauto cache to fix the \"Dependencies lock file is not found\" failure.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "ci: disable setup-node package-manager cache",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-12T23:33:31Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "8f56b44323f4d9f847c2e53a2438fb9bfc90d724",
"body": "Update SHA-pinned GitHub Actions to their latest releases:\n- actions/checkout: v4.3.1 -> v6.0.3\n- actions/setup-node: v4.4.0 -> v6.4.0\n\nBoth SHAs verified against the corresponding release tags.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: bump CI action pins to latest major versions",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-12T23:25:37Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "24587ed02ee557246310cfab385499e5a299d0d6",
"body": "refine: optional preflight + gate-safe test skeletons (en/ja), strip decorative emojis",
"is_bot": false,
"headline": "Merge pull request #174 from shinpr/refine/optional-preflight-en",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-09T08:05:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4a2edc23ab7382a81967a37f97f0da13c523b3c6",
"body": "Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.23.4",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-09T08:02:38Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "ca95a698f2b1ec1c9d023f7660c36c61fcc4d273",
"body": "…p decorative emojis\n\nMirror the English refinement (3c95d48) into the Japanese variant and remove\ndecorative emojis across both language variants.\n\nJapanese mirror (.claude/*-ja/)\n- Implementation Readiness gate -> optional preflight: work-planner stops emitting\n the marker; plan-template drops th\n[…]\n- Simplify task-executor state transitions to `[ ] -> [x]`, aligning the\n declaration with the actual two-state update procedure.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine: mirror optional-preflight and gate-safe skeletons to ja, stri…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-09T08:01:57Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3c95d48145383ff3d8e34fe110f35272d07fd364",
"body": "Replace the Implementation Readiness gate with an optional, user-invoked\npreflight, and bound test-skeleton generation so a committed skeleton stays\ngreen under static gates. English variant (.claude/*-en/) only.\n\nPreflight: gate -> optional advisory\n- work-planner: stop emitting `Implementation Rea\n[…]\nnces not-yet-implemented code that static gates evaluate.\n- task-decomposer: skip tasks already checked off (`[x]`) and committed.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refine: make preflight optional and keep test skeletons gate-safe (en)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-09T07:01:00Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "549f2eb4fe4ca91b457c5aa8f7261542fcc4ae4e",
"body": "…y-gates\n\nRequirement-boundary fidelity gates + frontend skill alignment (1.23.3)",
"is_bot": false,
"headline": "Merge pull request #173 from shinpr/feat/requirement-boundary-fidelit…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-06T06:53:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9a2a04e8e851ed24819c29ce4e704932b0d081f7",
"body": "Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.23.3",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-06T06:52:45Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "bc4aadd4779ca5d60b5b571e5ac641882eb8381c",
"body": "- frontend-typescript-rules: rules-first rewrite, self-contained (no\n cross-skill delegation under progressive disclosure). Keep thresholds,\n boundary type-safety, component/state rules, and error idioms\n (Result / AppError / Error Boundary); drop generic syntax examples and\n React.FC. Type the \n[…]\nclient-exposed env\n vars.\n- task-analyzer skills-index: update sections to match the rewritten\n skills.\n\nen and ja kept in sync.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refactor: align frontend skills across en/ja",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-06T06:50:46Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "1fc5d311e91d99bfc6bd6f6c0cb9619b9e166603",
"body": "…ception\n\n- Compress the Gate Ordering section to a single serial-gate line; gate\n membership and applicability conditions remain in each subsection's\n [Gate N — ...] heading (no information loss).\n- Remove the inline React implementation sample from\n technical-designer-frontend; the loaded front\n[…]\nnt \"except Error Boundaries\" to match\n the component-design rule (Error Boundaries still require a class).\n\nApplied to en and ja.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "refactor: trim technical-designer prompts and align Error Boundary ex…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-06T06:50:36Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "9870fdc52695a3938c283fb5a003c1cbcc1fa6d6",
"body": "Apply the EN agent changes to the JA agents, matching each file's\nexisting terminology (e.g. 観測可能/観察可能, メインパス/ハッピーパス) and\nkeeping technical terms (dd_violation, reliability,\ndesign_compliance_violation, attempted_approaches[], Design Doc, AC) in\nEnglish.\n\n- technical-designer / -frontend: 価値起点のドラフトと\n[…]\nundary-path evidence, core-mechanism preservation\n (cite the source phrase), and publication-boundary state at AC\n verification.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: mirror requirement-boundary fidelity gates to JA",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-06T05:23:40Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "1ca80fea5dbfd07cb673ec77ebed4dbe9ed5035a",
"body": "Specify, prove, and verify behavior changes at the requirement boundaries\nwhere regressions hide (a behavior can hold on the main path while\nregressing on a separate branch/state/input/lifecycle/fallback dimension).\n\n- technical-designer / -frontend: Value-First Drafting and Boundary\n Expansion bef\n[…]\ndary-path evidence,\n core-mechanism preservation (explicitly required; cite the source\n phrase), and publication-boundary state.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: strengthen requirement-boundary fidelity across agents (EN)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-06T04:52:53Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "e61790d166aba35746a3bec8894155548b4cddc9",
"body": "feat: proof-quality and planning-fidelity review gates (1.23.2)",
"is_bot": false,
"headline": "Merge pull request #171 from shinpr/feat/proof-quality-planning-fidelity",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-06-01T13:08:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1039ca849b15b9c742f0fa5fa1e722383aa6e0dc",
"body": "The Japanese rendering of \"claim\" was a false friend that reads as\n\"complaint\"; replace all 16 occurrences across the proof-quality JA\nagent/skill files with the correct word for the asserted behavior.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: correct mistranslated \"claim\" term in the JA files",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-01T13:06:04Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "f44378e5589e9693a4a89b04890a249ac70ab7eb",
"body": "Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.23.2",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-01T12:58:58Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "709b892f7dca7d1c849812eb334cedc91de60101",
"body": "…EN polish)\n\nTranslate the proof-quality and planning-fidelity review gates into the\nJapanese agent/command/skill set, matching each file's existing\nconventions (Japanese prose with English enum/contract tokens such as\nverdict.decision, proof_insufficient, doc_type WorkPlan, design_doc, and\nthe fail\n[…]\nn the Applies?\n column, matching the table\n- plan / front-plan: work plan review verdict branch split into per-decision\n bullets\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: mirror proof-quality and planning-fidelity review gates to JA (…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-01T12:56:11Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3835681849057a579c8cf619c7578f0948251f3f",
"body": "Proof Quality — raise verification from \"tests exist\" to \"tests prove\nthe claim's primary failure mode\":\n- acceptance-test-generator: emit Primary failure mode / Proof obligation\n on every skeleton (integration, fixture-e2e, service-e2e, property)\n- integration-test-reviewer: Claim Proof Adequacy c\n[…]\ntion-guide: WorkPlan review wired into Medium/Large\n planning flow; document-reviewer output contract updated to verdict.decision\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: add proof-quality and planning-fidelity review gates (EN)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-06-01T12:23:51Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "196d2e45de053134f6afbbf5587728dc88835346",
"body": "Tighten acceptance evidence discipline across agents",
"is_bot": false,
"headline": "Merge pull request #170 from shinpr/feat/acceptance-evidence-discipline",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-05-28T02:20:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f1b208dbba0384241b74e6827f9d93c78ced1975",
"body": "Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.23.1",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-28T02:18:53Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "1e62faf15cd7ddedf7eda4f03fceb3ec6bee167f",
"body": "Mirror the EN substance/escalation work and apply translation-specific\nfixes so the JA prompts behave identically to the EN counterparts.\n\nTranslation parity with EN:\n- Add the Substance check (Step 3) to quality-fixer / -frontend with the\n same recovery-then-stub_detected routing and AC binding.\n-\n[…]\n\"Continue until\"\n semantics; restore the runtime-signal rationale in the orchestration\n guide's runnableCheck input description.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: tighten acceptance evidence discipline across agents (JA)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-28T02:16:30Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "eb5a77d25fa89013d7a5e042d9066ad4026be30c",
"body": "…tract \"Test hollowing\" phrasing\n\n- task-executor-frontend Test Environment Check: the \"Available\" branch\n allows tests built on only the test runner and a render entry point,\n but the \"Unavailable\" branch previously asked for a \"test-runner-only\"\n alternative — the asymmetry would trigger unnece\n[…]\n-passing\n tests\") so the judgment criterion maps directly to detectable\n patterns instead of requiring noun-to-action inference.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: align frontend test-environment fallback wording and replace abs…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-28T02:14:44Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "e7eef84637439ab2277c010c43c50a084ab8dd3f",
"body": "- Add Substance check (Step 3) to quality-fixer / -frontend: when a test run is cited as evidence for the task's ACs, require at least one executed assertion exercising the AC behavior. Hollow tests (skip / TODO-only / always-true / 0-match runner) route via stub_detected with `type: \"hollow_test\"` \n[…]\nfixer blocked example into Variant A (specification conflict) and Variant B (missing prerequisites) to prevent hybrid JSON output.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: tighten acceptance evidence discipline across agents (EN)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-27T22:21:32Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "8ee93ee91579c0914405573752caf27063167811",
"body": "feat: add ui-analyzer agent and strengthen design/planning workflow",
"is_bot": false,
"headline": "Merge pull request #169 from shinpr/feat/ui-analyzer-and-design-flow",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-05-22T05:15:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ce51f6898a63d3d83c9ec0089c3b3d5dd9b58eda",
"body": "Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.23.0",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-22T05:12:37Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "dc7e781bcb68fcf8740749d6cc0f7baeb00abbc7",
"body": "- Translate the Japanese-version assets (agents-ja / commands-ja / skills-ja) to mirror the English-version workflow changes: the ui-analyzer agent, ADR binding propagation, codebase-first linear design recipes, prompt trims, and input-contract consistency fixes\n- Fix the design recipe Step 4 execut\n[…]\nc runs before user approval, consistent with the Workflow Overview diagram and front-design (applied to both English and Japanese)\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: add ui-analyzer agent and strengthen design/planning workflow (JA)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-22T05:03:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "5a962f73a09bef81068e00bacdfb54a80355d354",
"body": "- Add ui-analyzer agent for UI fact gathering and register it in the orchestration guide\n- Propagate ADR binding decisions through work plan, task decomposition, and task execution, with a binding_decision_violation escalation path\n- Rework the design and front-design recipes into a fixed linear flo\n[…]\nent input contracts, review-mode handling, and recipe handoffs\n\nEnglish-version assets only (agents-en / commands-en / skills-en).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: add ui-analyzer agent and strengthen design/planning workflow (EN)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-22T02:41:27Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "23c31742c0f73723fb6d3a2503891ffef749e13d",
"body": "…-gate\n\nRelease 1.22.1: Minimal Surface Alternatives design gate",
"is_bot": false,
"headline": "Merge pull request #168 from shinpr/feat/minimal-surface-alternatives…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-05-16T09:25:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "677ca4ed691294674c0dea918ac61ca0eda84417",
"body": "Adds a \"Scope Discipline\" section to CLAUDE.md (EN/JA) defining how to constrain edits within the user's specified scope: explicit quantities and targets (\"one\", \"this file\", \"only X\") set boundaries; copy/move/mirror requests preserve content verbatim; port/translation requests preserve intent and \n[…]\nA Scope Discipline section uses 「対応箇所」 for natural correspondence semantics.\n\nFolds these changes into the 1.22.1 CHANGELOG entry.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs: add Scope Discipline rule and tighten CLAUDE.md wording",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-16T09:21:54Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "1fc53d4bc82d1d5b024743225c8cc514e50f0a0f",
"body": "Localizes the Minimal Surface Alternatives design gate to Japanese sources (7 files) and ships the 1.22.1 patch. Japanese terminology mirrors the English source: in-scope/out-of-scope categorization, ownership-boundary scoping for frontend, the 5-step procedure with context-adaptive comparison table\n[…]\nt. CHANGELOG describes the gate, the principle, the Design Doc template additions, and the documentation-criteria includes update.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.22.1",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-16T08:55:49Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "5881c89dc1d1fc04673d21b937dc40138a52a0d8",
"body": "Replace shorthand \"public-contract or cross-boundary fields\" with \"public-contract elements or cross-boundary fields\" across the four shorthand sites (Gate-1 listing, section header, coding-standards principle, design-template intro). The shorthand naturally parses as a single adjective on fields, n\n[…]\nriteria Includes bullet: \"Minimal surface alternatives\" → \"Minimal Surface Alternatives\" to match the section name used elsewhere.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: tighten Minimal Surface Alternatives wording (EN)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-16T08:52:40Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "6d3ba7808d6e1708c27f1eb93cdcd3dc43554e37",
"body": "Introduce a Gate-1 design check that requires each new maintenance-surface-bearing element (persistent state, public-contract or cross-boundary fields/props, behavioral modes/flags/variants, reusable abstractions, or component splits) to be evaluated against subtractive alternatives via a 5-step pro\n[…]\n quality sub-checks\n- code-reviewer: escalation criterion when implementation introduces in-scope elements absent from the section\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: add Minimal Surface Alternatives design gate (EN)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-16T08:24:06Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "8b806da465239f427d851cf591b0d6b449a78f78",
"body": "…ources\n\nfeat: template-driven /project-inject with external resources (EN/JA)",
"is_bot": false,
"headline": "Merge pull request #167 from shinpr/feat/project-context-external-res…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-05-10T06:51:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "903e502c72bc06a65a4b15a6cf80be556cacfb23",
"body": "Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.22.0",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-10T06:46:31Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "c2a0c14b8c69e6fd65f05d78e3ab06f42d649265",
"body": "- check-skills-index.mjs treats yaml entries with no sections as dynamic-content skills (logged, skipped) rather than failing\n- project-context skill ships as a minimal stub with no static section headings; /project-inject populates the catalog into SKILL.md per the user's project\n- project-context yaml entry drops the sections list and notes that content is dynamic\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: allow dynamic skills in skills-index validator",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-10T06:39:45Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "f74068bb60fb301786369492140d3acebeefd487",
"body": "- /project-inject runs section-level hearing driven by references/template.md, with add/keep/update/remove/skip dispositions for incremental updates\n- project-context expands to cover external-resource access methods (design source, schema source, secret store, IaC source) across frontend/backend/ap\n[…]\nthe catalog; unconfigured stub ships with the five catalog headings empty as a structural skeleton for /project-inject to populate\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: template-driven /project-inject with external resources (EN/JA)",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-10T06:30:06Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "6670f5c5302c3e600fabd31ebca3868d275558b3",
"body": "docs: surface /prepare-implementation and E2E lane split in user-facing docs",
"is_bot": false,
"headline": "Merge pull request #166 from shinpr/docs/readme-1.21.0",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-05-03T05:05:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7e4b9e48c8d99da6366199321f2534faf9ba3241",
"body": "…ng docs\n\nREADME and use-cases guides did not yet reflect the 1.21.0 surface area\nvisible to users.\n\n- Slash commands tables (README en/ja) now list /prepare-implementation\n between /plan and /build — its role is to get the plan ready for /build\n by verifying readiness and resolving gaps\n- Skill d\n[…]\nshows /prepare-implementation\n as an optional step before /build, and Command Details gains a section\n describing the recipe's responsibility (verify → resolve gaps → promote\n the readiness marker)",
"is_bot": false,
"headline": "docs: surface /prepare-implementation and E2E lane split in user-faci…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-03T05:04:12Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1c5e636e2adbd50216fb9661bdefeaeedf0f1ed6",
"body": "…opagation\n\nfeat: 1.21.0 — readiness gate, E2E lane split, and design propagation",
"is_bot": false,
"headline": "Merge pull request #165 from shinpr/feat/readiness-gate-and-design-pr…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-05-03T04:54:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cdd98059a32fc2b1110a3ad64df3848b44089326",
"body": "Removes internal-workflow phrasing from already-published 1.20.9 entries:\n\n- Drops the \"JA mirror:\" labels in three entries — bilingual content is\n the published artifact, not the mirroring workflow\n- Drops the per-file line counts in the agent compression entry (internal\n metric); the preserved-c\n[…]\nto both EN and JA mirrors\" as a noteworthy detail; both\n languages are the standard delivery\n- Replaces \"old wording... in favor of the new\" narrative with a direct\n list of what was removed and why",
"is_bot": false,
"headline": "docs(changelog): clean iteration noise from 1.20.9 entries",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-03T04:52:48Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "98c142dd84c7fbad7bb707c745e1f3a5c7a0613a",
"body": null,
"is_bot": false,
"headline": "chore: release 1.21.0",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-03T04:46:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0360a0aade3bbce930d8620e121506bfd1a11da8",
"body": "Mirrors the English-side workflow refactor to the Japanese sources so both\nlanguage environments stay in sync.\n\nTranslation policy\n- Technical identifiers preserved in English: filename placeholders\n ({plan-name}, {number}), schema fields (generatedFiles.fixtureE2e,\n e2eAbsenceReason, @lane:), and\n[…]\n示す信号\", \"disqualify\"\n → \"不適格扱いとなる\")\n- acceptance-test-generator e2eAbsenceReason note: \"本reason\" → \"この\n reason 値\"\n- front-build header label and user prompt aligned with build.md\n (\"作業計画\" → \"作業計画書\")",
"is_bot": false,
"headline": "feat(ja): mirror readiness gate, E2E lane split, and design propagation",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-03T04:31:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "214e9fe4abd68ceee9db04692ed7acb68770638f",
"body": "Strengthens the workflow so design and verification context reaches the\nexecutor and the implementation is observable from Phase 1, by adding a\nreadiness gate, splitting E2E into two lanes, and propagating design\ncontext through the planning chain.\n\nImplementation Readiness gate\n- work-planner emits\n[…]\nresolve to existing guide sections\n (\"Standard Flow I Manage\", \"Layer-Aware Agent Routing\")\n\nskills-index integrity\n- check-skills-index continues to pass for both en and ja: H2 structure\n unchanged",
"is_bot": false,
"headline": "feat(en): add readiness gate, E2E lane split, and design propagation",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-03T02:58:23Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5442cc0c66a5ab5a0835929ba77fb120951d7253",
"body": "Adds scripts/check-skills-index.mjs that verifies every skill entry in\n.claude/skills-{en,ja}/task-analyzer/references/skills-index.yaml has its\nsections list match the H2 headings of the corresponding SKILL.md (strict\norder + text). Wired as `npm run check:skills-index` and registered in\n.husky/pre-commit so future drift between the index and SKILL.md is caught\nbefore commit.\n\nScope is intentionally narrow: sections are deterministically checkable;\ntags/typical-use remain manual (subjective).",
"is_bot": false,
"headline": "chore: add skills-index drift checker to pre-commit",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-02T22:29:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1ca69cd83c0929a847203c6055a5f8c25c9196f3",
"body": "Tighten agent prompt contracts, mirror to JA, and refine small-scale flow (1.20.9)",
"is_bot": false,
"headline": "Merge pull request #164 from shinpr/feat/agent-prompt-contracts",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-05-01T11:41:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9552960df726083666c04af565c824b204b88a28",
"body": "…ings\n\nThe task-analyzer agent reads skills-index.yaml as the canonical source of\neach skill's section list when proposing skill selection. Drift between\nlisted sections and actual ## headings causes section selection misses\n(missing entries hide candidates) or dead references (extra entries point\nn\n[…]\n定義\"\n\nAfter this change, every entry under each skill's `sections:` list maps\n1:1 to a `## ` heading in the corresponding SKILL.md.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(task-analyzer): align skills-index.yaml with actual SKILL.md head…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-01T11:39:59Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ff69eefb8e6b49be5e001d7859cbeb98e9b10931",
"body": "CHANGELOG entry covers the agent prompt contract additions, JA mirror, and\nsmall-scale flow refinements introduced in this release.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: release 1.20.9",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-01T10:43:37Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "7ac105834b432f8a4459d9f6fa2914e662d99775",
"body": "… flow\n\nMirrors the Phase 1 contract additions to the Japanese agents/commands/skills,\nfixes runtime contract mismatches that surfaced during the JA pass, and tightens\nthe small-scale orchestration flow on both EN and JA.\n\nTranslation principles applied across the JA mirror\n- Layer 1 (machine-read i\n[…]\non: path|null, e2eAbsenceReason enum values, and the\n \"verify files exist\" instruction were lost in an earlier translation pass).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(ja): mirror agent prompt contract updates and refine small-scale…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-01T10:36:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "428b448365c2447a2965a9c34573685bb81597fd",
"body": "Strengthens execution-time contracts across agents/commands/skills, then compresses\nthe largest agent files while preserving all decision criteria and JSON contracts.\n\nKey contract additions\n- task-executor / -frontend: split Phase Entry Gate from Step 1/2 Completion Gates\n (temporal precondition v\n[…]\n match, no code fence).\n\nJapanese mirror is intentionally deferred to a follow-up commit per the\nestablished translation workflow.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(en): tighten agent prompt contracts and compress agent files",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-05-01T06:59:49Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "e1612886e89d3b827019b4a273f89f6f190ef22f",
"body": "feat: add Fact Disposition framework with cross-layer refinements",
"is_bot": false,
"headline": "Merge pull request #163 from shinpr/feat/fact-disposition-framework",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-04-16T15:28:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "317e4c172c24489aac76444cf0c8355b84933f76",
"body": "Two conservative passes on agent file size without changing guidance.\n\n- technical-designer(-frontend) EN/JA: remove overlapping principle bullets,\n consolidate ADR responsibility restatements, drop AC preamble that\n duplicated the detailed section below, and inline the \"L1/L2/L3\" term\n for self-\n[…]\nm default and carried no guidance. rule-advisor keeps its\n description-level reference since that points to the caller's process.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: trim redundant content from agent files",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-04-16T15:26:27Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "aed32918fc41dd4a3f4b8667a9053f27ec8ea67b",
"body": "Remove repeated 4-column enumerations (fact_id + disposition + rationale + evidence) from Required Information summary and Design Doc checklist. The Fact Disposition Table section already establishes the full 6-column schema (Fact ID / Focus Area / Disposition / Rationale / Evidence / Related Files)\n[…]\n were both redundant and inconsistent with the actual schema.\n\nAffects technical-designer and technical-designer-frontend (EN/JA).\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: trim redundant column enumerations in technical-designer guidance",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-04-16T15:11:46Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "0fad2dbc789d3071e5b70440533344921285b65b",
"body": "…/JA)\n\nIntroduce a traceability mechanism binding existing-behavior facts from\ncodebase analysis to Design Doc decisions, enforced end-to-end from design\nthrough implementation review.\n\nKey changes:\n- codebase-analyzer: focusAreas expanded with fact_id / evidence /\n factsToAddress / relatedFiles; c\n[…]\nsymmetric\n [Stop on critical] gates at both review steps\n- Agent-to-agent and skill-to-skill references decoupled across 52 files\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: add Fact Disposition framework with cross-layer refinements (EN…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-04-16T15:01:50Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "734bc233a90925572e60b8f3ee537aea33d6753d",
"body": "…-reference-representativeness\n\nfeat: add quality gate propagation and reference representativeness checks",
"is_bot": false,
"headline": "Merge pull request #162 from shinpr/feat/quality-gate-propagation-and…",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-04-12T03:10:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2bb73f5573fa243cf34ab105b2298a5e10986daf",
"body": "…iveness checks (EN/JA)\n\nTwo structural improvements to the workflow:\n\nA) Quality assurance mechanisms are now observed at design time\n(codebase-analyzer), recorded with adopted/noted status and\nexecutable_check/passive_constraint type classification\n(technical-designer, Design Doc), propagated thro\n[…]\nk-executor, so that\npatterns and dependencies adopted from nearby code are verified\nagainst repository-wide usage before adoption.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: add quality gate propagation pipeline and reference representat…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-04-12T03:08:40Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b40557d4cdf67d52d97e443733d2ad3b922b75cc",
"body": "feat: improve workflow reliability with stub detection, failure point model, and E2E selection fixes",
"is_bot": false,
"headline": "Merge pull request #161 from shinpr/feat/improve-workflow-precision",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-04-10T10:19:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "281d5ed05958820ac3ce54982bff8de1c8a3496d",
"body": "… model, and E2E selection fixes (EN/JA)\n\n- Add incomplete-implementation detection gate to quality-fixer before quality checks\n- Replace hypothesis model with failure point model in diagnose flow (investigator/verifier/solver)\n- Fix E2E test selection with ROI formula correction, reserved slots, an\n[…]\ngn-sync sync_status contract alignment with orchestration guide\n- Fix quality-fixer blocked condition AND/OR logic inversion in JA\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: improve workflow reliability with stub detection, failure point…",
"author_name": "Shinsuke Kagawa",
"author_login": "shinpr",
"committed_at": "2026-04-10T10:17:53Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "2fb0f18d6ac4b172add7d4ea924188af93ba515b",
"body": "feat: add Design-to-Plan Traceability for DD technical requirement coverage",
"is_bot": false,
"headline": "Merge pull request #160 from shinpr/feat/design-to-plan-traceability",
"author_name": "shinpr",
"author_login": "shinpr",
"committed_at": "2026-04-05T22:56:47Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 100,
"commits_last_year": 576,
"latest_release_at": "2026-07-19T08:00:15Z",
"latest_release_tag": "v1.25.4",
"releases_from_tags": false,
"days_since_last_push": 5,
"active_weeks_last_year": 48,
"days_since_latest_release": 5,
"mean_days_between_releases": 4.4
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": false,
"health_percentage": 42,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "create-ai-project",
"exists": true,
"license": "MIT",
"keywords": [
"typescript",
"boilerplate",
"template",
"starter",
"scaffolding",
"cli",
"claude-code",
"anthropic",
"ai-development",
"llm-development",
"skills",
"sub-agents",
"agentic",
"workflow",
"multi-agent"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/create-ai-project",
"is_deprecated": false,
"latest_version": "1.25.4",
"repository_url": "https://github.com/shinpr/ai-coding-project-boilerplate",
"versions_count": 66,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 3686,
"first_published_at": "2025-12-11T07:53:54.481000Z",
"latest_published_at": "2026-07-19T08:03:50.002000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 5
}
]
},
"popularity": {
"forks": 23,
"stars": 223,
"watchers": 3,
"fork_history": {
"days": [
{
"date": "2025-08-31",
"count": 1
},
{
"date": "2025-09-02",
"count": 1
},
{
"date": "2025-09-04",
"count": 1
},
{
"date": "2025-09-05",
"count": 1
},
{
"date": "2025-09-06",
"count": 1
},
{
"date": "2025-09-09",
"count": 1
},
{
"date": "2025-09-13",
"count": 1
},
{
"date": "2025-09-25",
"count": 1
},
{
"date": "2025-10-17",
"count": 1
},
{
"date": "2025-10-28",
"count": 1
},
{
"date": "2025-11-29",
"count": 1
},
{
"date": "2025-12-20",
"count": 1
},
{
"date": "2025-12-23",
"count": 1
},
{
"date": "2025-12-30",
"count": 1
},
{
"date": "2026-01-05",
"count": 1
},
{
"date": "2026-01-25",
"count": 1
},
{
"date": "2026-02-12",
"count": 1
},
{
"date": "2026-02-28",
"count": 1
},
{
"date": "2026-03-03",
"count": 1
},
{
"date": "2026-04-15",
"count": 1
},
{
"date": "2026-04-17",
"count": 1
},
{
"date": "2026-05-13",
"count": 1
},
{
"date": "2026-06-01",
"count": 1
}
],
"complete": true,
"collected": 23,
"total_forks": 23
},
"star_history": null,
"open_issues_and_prs": 0
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"tsconfig.json"
],
"toolchain_manifests": [],
"largest_source_bytes": 15085,
"source_files_sampled": 10,
"oversized_source_files": 0,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"package.json"
],
"advisories": {
"error": "No resolved dependencies carried a version and a supported ecosystem",
"scope": "repository_graph",
"source": null,
"findings": [],
"collected": false,
"malicious": [],
"truncated": false,
"by_severity": {},
"advisory_count": 0,
"affected_count": 0,
"assessed_count": 0,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 14,
"direct_affected_count": 0
},
"ecosystems": [
"npm"
],
"dependencies": [],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "@biomejs/biome",
"direct": false,
"version": "^2.4.6",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "^22.0.0",
"ecosystem": "npm"
},
{
"name": "@vitest/coverage-v8",
"direct": false,
"version": "^4.0.0",
"ecosystem": "npm"
},
{
"name": "@vitest/ui",
"direct": false,
"version": "^4.0.0",
"ecosystem": "npm"
},
{
"name": "dpdm",
"direct": false,
"version": "^4.0.0",
"ecosystem": "npm"
},
{
"name": "fast-check",
"direct": false,
"version": "^3.23.2",
"ecosystem": "npm"
},
{
"name": "husky",
"direct": false,
"version": "^9.1.7",
"ecosystem": "npm"
},
{
"name": "knip",
"direct": false,
"version": "^5.0.0",
"ecosystem": "npm"
},
{
"name": "lint-staged",
"direct": false,
"version": "^16.1.0",
"ecosystem": "npm"
},
{
"name": "tsc-alias",
"direct": false,
"version": "^1.8.7",
"ecosystem": "npm"
},
{
"name": "tsx",
"direct": false,
"version": "^4.19.4",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "^5.0.0",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "^6.0.0",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "^4.0.0",
"ecosystem": "npm"
}
],
"collected": true,
"truncated": false,
"total_count": 14,
"direct_count": 0,
"indirect_count": 14
}
},
"maintainership": {
"issues": {
"open_prs": 0,
"merged_prs": 167,
"open_issues": 0,
"closed_ratio": 1,
"closed_issues": 17,
"closed_unmerged_prs": 2
},
"bus_factor": 1,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "shinpr",
"commits": 574,
"avatar_url": "https://avatars.githubusercontent.com/u/52246947?v=4"
}
],
"contributors_sampled": 1,
"top_contributor_share": 1
},
"quality_signals": {
"has_ci": true,
"has_tests": false,
"ci_workflows": [
"ci.yml"
],
"has_docs_dir": true,
"linter_configs": [
"biome.json"
],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": 4,
"reason": "branch protection is not maximal on development and all release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "8 out of 8 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 0,
"reason": "Found 0/8 approved changesets -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 0,
"reason": "project has 0 contributing companies or organizations -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": null,
"reason": "packaging workflow not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 6,
"reason": "dependency not pinned by hash detected -- score normalized to 6",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 0,
"reason": "SAST tool is not run on all commits -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 0,
"reason": "security policy file not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": null,
"reason": "no releases found",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 10,
"reason": "0 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "13c65498db9066f158db5d1151b6040b2dad6196",
"ran_at": "2026-07-25T05:01:50Z",
"aggregate_score": 5.5,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": false
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-19T07:58:51Z",
"oldest_open_prs": [],
"last_merged_pr_at": "2026-07-19T07:58:19Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": []
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/shinpr/ai-coding-project-boilerplate",
"host": "github.com",
"name": "ai-coding-project-boilerplate",
"owner": "shinpr"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 68,
"inputs": {
"security": 55,
"vitality": 98,
"community": 53,
"governance": 58,
"engineering": 70
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 98,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 97,
"inputs": {
"commits_last_year": 576,
"human_commit_share": 1,
"days_since_last_push": 5,
"active_weeks_last_year": 48
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 5 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 5
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "48/52 weeks with commits",
"points": 33.2,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 48
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "576 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 576
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 100,
"inputs": {
"releases_count": 100,
"latest_release_tag": "v1.25.4",
"releases_from_tags": false,
"days_since_latest_release": 5,
"mean_days_between_releases": 4.4
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "100 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 100
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 5 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 5
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~4.4 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 4.4
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "maintained",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": null,
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": 5,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 5 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 5
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "moderate",
"name": "Community & Adoption",
"value": 53,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "moderate",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 51,
"inputs": {
"forks": 23,
"stars": 223,
"watchers": 3,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "223 stars",
"points": 38.1,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 223
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "23 forks",
"points": 11.2,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 23
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "3 watchers",
"points": 1.7,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 3
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "moderate",
"name": "Community health",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (MIT)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MIT"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
},
{
"key": "ecosystem_adoption",
"band": "moderate",
"name": "Ecosystem adoption (downloads)",
"note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"registry_dependents"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 60,
"inputs": {
"packages": [
"create-ai-project"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 3686
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "3,686 downloads/month across npm",
"points": 47.6,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 3686,
"ecosystems": "npm"
}
}
],
"max_points": 80
},
{
"key": "registry_dependents",
"name": "Registry dependents",
"detail": "not reported by this ecosystem",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_reported_by_this_ecosystem",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 58,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 10,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 1,
"top_contributor_share": 1
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "1 contributor(s) cover half of all commits",
"points": 9,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 1
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 100% of commits",
"points": 0,
"status": "missed",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 100
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "1 contributors",
"points": 1.4,
"status": "partial",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 1
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 0 contributing companies or organizations -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "excellent",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"merged_prs": 167,
"open_issues": 0,
"closed_issues": 17,
"issue_closed_ratio": 1,
"closed_unmerged_prs": 2
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "100% of issues closed",
"points": 46.8,
"status": "met",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 100
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "167/169 decided PRs merged",
"points": 37.8,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 167,
"decided": 169
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/8 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"verified_domain"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 56,
"inputs": {
"followers": 69,
"owner_type": "User",
"is_verified": null,
"owner_login": "shinpr",
"public_repos": 22,
"account_age_days": 2585
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "personal (user) account",
"points": 10,
"status": "partial",
"details": [
{
"code": "owner_personal",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": "not applicable to user accounts",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_applicable_to_user_accounts",
"params": {}
}
],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "69 followers of shinpr",
"points": 13.3,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 69,
"login": "shinpr"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "22 public repos, account ~7 yr old",
"points": 21.9,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 22
}
},
{
"code": "account_age_years",
"params": {
"years": 7
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"create-ai-project"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 5
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "npm"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 5 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 5
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "66 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 66
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 70,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "moderate",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 60,
"inputs": {
"has_ci": true,
"has_tests": false,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "1 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 1
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": "biome.json",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "biome.json"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "8 out of 8 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"topics": [
"claude-code",
"typescript",
"boilerplate",
"productivity",
"ai-agents",
"skills",
"agentic-ai",
"agentic-workflow",
"developer-tools",
"agent-skills",
"quality-gates",
"llm-orchestration"
],
"has_wiki": true,
"homepage": null,
"has_readme": true,
"has_docs_dir": true,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 25,
"status": "met",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": "12 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 12
}
}
],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "moderate",
"name": "Security",
"value": 55,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"packaging",
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 55,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 16,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 2,
"scorecard_aggregate": 5.5
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection is not maximal on development and all release branches",
"points": 3,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "8 out of 8 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "Found 0/8 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 0 contributing companies or organizations -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow not detected",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 6",
"points": 3,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is not run on all commits -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file not detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "detected GitHub workflow tokens with excessive permissions",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "0 existing vulnerabilities detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "high_risk_jurisdiction_exposure",
"band": "excellent",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"review_only_matches": 0,
"assessed_self_published_locations": 2
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "at_risk",
"name": "AI Readiness",
"value": 46,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "at_risk",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.99,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "99 of 100 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 99,
"sampled": 100
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "at_risk",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 38,
"inputs": {
"has_nix": false,
"has_tests": false,
"lockfiles": [],
"has_dockerfile": false,
"typed_language": false,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"tsconfig.json"
],
"agent_commit_share": 0.64,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": "biome.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "biome.json"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "64 of the last 100 commits agent-authored or agent-credited",
"points": 10,
"status": "met",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 64,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "no automated dependency updates observed",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_dependency_automation",
"params": {}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 6",
"points": 6,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "good",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 82,
"inputs": {
"primary_language": "JavaScript",
"largest_source_bytes": 15085,
"source_files_sampled": 10,
"oversized_source_files": 0
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "JavaScript with type-check config (tsconfig.json)",
"points": 27,
"status": "partial",
"details": [
{
"code": "typecheck_config_language",
"params": {
"files": "tsconfig.json",
"language": "JavaScript"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "0/10 source files over 60KB",
"points": 55,
"status": "met",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 10,
"oversized": 0
}
}
],
"max_points": 55
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
"No resolved dependencies carried a version and a supported ecosystem"
],
"report_type": "repository",
"generated_at": "2026-07-25T05:02:04.459604Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/s/shinpr/ai-coding-project-boilerplate.svg",
"full_name": "shinpr/ai-coding-project-boilerplate",
"license_state": "standard",
"license_spdx": "MIT"
}