[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DAH707D2NJA9PRXXBPQHBJ":3,"skill-same:01M6DAH707D2NJA9PRXXBPQHBJ":68},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":26,"publishedAt":36,"linkOnly":37,"markdownContent":38,"markdownBody":39,"frontMatter":40,"refName":42,"commitSha":43,"skillDirectory":44,"forksCount":14,"repositoryHtmlUrl":45,"repositoryHomepageUrl":6,"ownerHtmlUrl":46,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":47,"install":48,"resources":61},"01M6DAH707D2NJA9PRXXBPQHBJ","laravel-tdd",null,"Test-driven development for Laravel with PHPUnit and Pest, factories, database testing, fakes, and coverage targets.","Prekzursil\u002Fagent-skills-toolchain","Prekzursil","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F54636077?v=4","01M6DACZ1PCQHD99SCR1YXG28B","Andrei Mihai Visalon","01M6DACZ670WZF535V3WYYSS4Z",0,"MIT","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Flaravel-tdd\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口",[27,28,29,30,31,32,33,34,35],"tdd","laravel tdd","laravel","testing","test","development","database","coverage","driven","2026-11-10 10:12:30",false,"---\nname: laravel-tdd\ndescription: Test-driven development for Laravel with PHPUnit and Pest, factories, database testing, fakes, and coverage targets.\norigin: ECC\n---\n\n# Laravel TDD Workflow\n\nTest-driven development for Laravel applications using PHPUnit and Pest with 80%+ coverage (unit + feature).\n\n## When to Use\n\n- New features or endpoints in Laravel\n- Bug fixes or refactors\n- Testing Eloquent models, policies, jobs, and notifications\n- Prefer Pest for new tests unless the project already standardizes on PHPUnit\n\n## How It Works\n\n### Red-Green-Refactor Cycle\n\n1) Write a failing test\n2) Implement the minimal change to pass\n3) Refactor while keeping tests green\n\n### Test Layers\n\n- **Unit**: pure PHP classes, value objects, services\n- **Feature**: HTTP endpoints, auth, validation, policies\n- **Integration**: database + queue + external boundaries\n\nChoose layers based on scope:\n\n- Use **Unit** tests for pure business logic and services.\n- Use **Feature** tests for HTTP, auth, validation, and response shape.\n- Use **Integration** tests when validating DB\u002Fqueues\u002Fexternal services together.\n\n### Database Strategy\n\n- `RefreshDatabase` for most feature\u002Fintegration tests (runs migrations once per test run, then wraps each test in a transaction when supported; in-memory databases may re-migrate per test)\n- `DatabaseTransactions` when the schema is already migrated and you only need per-test rollback\n- `DatabaseMigrations` when you need a full migrate\u002Ffresh for every test and can afford the cost\n\nUse `RefreshDatabase` as the default for tests that touch the database: for databases with transaction support, it runs migrations once per test run (via a static flag) and wraps each test in a transaction; for `:memory:` SQLite or connections without transactions, it migrates before each test. Use `DatabaseTransactions` when the schema is already migrated and you only need per-test rollbacks.\n\n### Testing Framework Choice\n\n- Default to **Pest** for new tests when available.\n- Use **PHPUnit** only if the project already standardizes on it or requires PHPUnit-specific tooling.\n\n## Examples\n\n### PHPUnit Example\n\n```php\nuse App\\Models\\User;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\nuse Tests\\TestCase;\n\nfinal class ProjectControllerTest extends TestCase\n{\n    use RefreshDatabase;\n\n    public function test_owner_can_create_project(): void\n    {\n        $user = User::factory()->create();\n\n        $response = $this->actingAs($user)->postJson('\u002Fapi\u002Fprojects', [\n            'name' => 'New Project',\n        ]);\n\n        $response->assertCreated();\n        $this->assertDatabaseHas('projects', ['name' => 'New Project']);\n    }\n}\n```\n\n### Feature Test Example (HTTP Layer)\n\n```php\nuse App\\Models\\Project;\nuse App\\Models\\User;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\nuse Tests\\TestCase;\n\nfinal class ProjectIndexTest extends TestCase\n{\n    use RefreshDatabase;\n\n    public function test_projects_index_returns_paginated_results(): void\n    {\n        $user = User::factory()->create();\n        Project::factory()->count(3)->for($user)->create();\n\n        $response = $this->actingAs($user)->getJson('\u002Fapi\u002Fprojects');\n\n        $response->assertOk();\n        $response->assertJsonStructure(['success', 'data', 'error', 'meta']);\n    }\n}\n```\n\n### Pest Example\n\n```php\nuse App\\Models\\User;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\n\nuse function Pest\\Laravel\\actingAs;\nuse function Pest\\Laravel\\assertDatabaseHas;\n\nuses(RefreshDatabase::class);\n\ntest('owner can create project', function () {\n    $user = User::factory()->create();\n\n    $response = actingAs($user)->postJson('\u002Fapi\u002Fprojects', [\n        'name' => 'New Project',\n    ]);\n\n    $response->assertCreated();\n    assertDatabaseHas('projects', ['name' => 'New Project']);\n});\n```\n\n### Feature Test Pest Example (HTTP Layer)\n\n```php\nuse App\\Models\\Project;\nuse App\\Models\\User;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\n\nuse function Pest\\Laravel\\actingAs;\n\nuses(RefreshDatabase::class);\n\ntest('projects index returns paginated results', function () {\n    $user = User::factory()->create();\n    Project::factory()->count(3)->for($user)->create();\n\n    $response = actingAs($user)->getJson('\u002Fapi\u002Fprojects');\n\n    $response->assertOk();\n    $response->assertJsonStructure(['success', 'data', 'error', 'meta']);\n});\n```\n\n### Factories and States\n\n- Use factories for test data\n- Define states for edge cases (archived, admin, trial)\n\n```php\n$user = User::factory()->state(['role' => 'admin'])->create();\n```\n\n### Database Testing\n\n- Use `RefreshDatabase` for clean state\n- Keep tests isolated and deterministic\n- Prefer `assertDatabaseHas` over manual queries\n\n### Persistence Test Example\n\n```php\nuse App\\Models\\Project;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\nuse Tests\\TestCase;\n\nfinal class ProjectRepositoryTest extends TestCase\n{\n    use RefreshDatabase;\n\n    public function test_project_can_be_retrieved_by_slug(): void\n    {\n        $project = Project::factory()->create(['slug' => 'alpha']);\n\n        $found = Project::query()->where('slug', 'alpha')->firstOrFail();\n\n        $this->assertSame($project->id, $found->id);\n    }\n}\n```\n\n### Fakes for Side Effects\n\n- `Bus::fake()` for jobs\n- `Queue::fake()` for queued work\n- `Mail::fake()` and `Notification::fake()` for notifications\n- `Event::fake()` for domain events\n\n```php\nuse Illuminate\\Support\\Facades\\Queue;\n\nQueue::fake();\n\ndispatch(new SendOrderConfirmation($order->id));\n\nQueue::assertPushed(SendOrderConfirmation::class);\n```\n\n```php\nuse Illuminate\\Support\\Facades\\Notification;\n\nNotification::fake();\n\n$user->notify(new InvoiceReady($invoice));\n\nNotification::assertSentTo($user, InvoiceReady::class);\n```\n\n### Auth Testing (Sanctum)\n\n```php\nuse Laravel\\Sanctum\\Sanctum;\n\nSanctum::actingAs($user);\n\n$response = $this->getJson('\u002Fapi\u002Fprojects');\n$response->assertOk();\n```\n\n### HTTP and External Services\n\n- Use `Http::fake()` to isolate external APIs\n- Assert outbound payloads with `Http::assertSent()`\n\n### Coverage Targets\n\n- Enforce 80%+ coverage for unit + feature tests\n- Use `pcov` or `XDEBUG_MODE=coverage` in CI\n\n### Test Commands\n\n- `php artisan test`\n- `vendor\u002Fbin\u002Fphpunit`\n- `vendor\u002Fbin\u002Fpest`\n\n### Test Configuration\n\n- Use `phpunit.xml` to set `DB_CONNECTION=sqlite` and `DB_DATABASE=:memory:` for fast tests\n- Keep separate env for tests to avoid touching dev\u002Fprod data\n\n### Authorization Tests\n\n```php\nuse Illuminate\\Support\\Facades\\Gate;\n\n$this->assertTrue(Gate::forUser($user)->allows('update', $project));\n$this->assertFalse(Gate::forUser($otherUser)->allows('update', $project));\n```\n\n### Inertia Feature Tests\n\nWhen using Inertia.js, assert on the component name and props with the Inertia testing helpers.\n\n```php\nuse App\\Models\\User;\nuse Inertia\\Testing\\AssertableInertia;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\nuse Tests\\TestCase;\n\nfinal class DashboardInertiaTest extends TestCase\n{\n    use RefreshDatabase;\n\n    public function test_dashboard_inertia_props(): void\n    {\n        $user = User::factory()->create();\n\n        $response = $this->actingAs($user)->get('\u002Fdashboard');\n\n        $response->assertOk();\n        $response->assertInertia(fn (AssertableInertia $page) => $page\n            ->component('Dashboard')\n            ->where('user.id', $user->id)\n            ->has('projects')\n        );\n    }\n}\n```\n\nPrefer `assertInertia` over raw JSON assertions to keep tests aligned with Inertia responses.\n","# Laravel TDD Workflow\n\nTest-driven development for Laravel applications using PHPUnit and Pest with 80%+ coverage (unit + feature).\n\n## When to Use\n\n- New features or endpoints in Laravel\n- Bug fixes or refactors\n- Testing Eloquent models, policies, jobs, and notifications\n- Prefer Pest for new tests unless the project already standardizes on PHPUnit\n\n## How It Works\n\n### Red-Green-Refactor Cycle\n\n1) Write a failing test\n2) Implement the minimal change to pass\n3) Refactor while keeping tests green\n\n### Test Layers\n\n- **Unit**: pure PHP classes, value objects, services\n- **Feature**: HTTP endpoints, auth, validation, policies\n- **Integration**: database + queue + external boundaries\n\nChoose layers based on scope:\n\n- Use **Unit** tests for pure business logic and services.\n- Use **Feature** tests for HTTP, auth, validation, and response shape.\n- Use **Integration** tests when validating DB\u002Fqueues\u002Fexternal services together.\n\n### Database Strategy\n\n- `RefreshDatabase` for most feature\u002Fintegration tests (runs migrations once per test run, then wraps each test in a transaction when supported; in-memory databases may re-migrate per test)\n- `DatabaseTransactions` when the schema is already migrated and you only need per-test rollback\n- `DatabaseMigrations` when you need a full migrate\u002Ffresh for every test and can afford the cost\n\nUse `RefreshDatabase` as the default for tests that touch the database: for databases with transaction support, it runs migrations once per test run (via a static flag) and wraps each test in a transaction; for `:memory:` SQLite or connections without transactions, it migrates before each test. Use `DatabaseTransactions` when the schema is already migrated and you only need per-test rollbacks.\n\n### Testing Framework Choice\n\n- Default to **Pest** for new tests when available.\n- Use **PHPUnit** only if the project already standardizes on it or requires PHPUnit-specific tooling.\n\n## Examples\n\n### PHPUnit Example\n\n```php\nuse App\\Models\\User;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\nuse Tests\\TestCase;\n\nfinal class ProjectControllerTest extends TestCase\n{\n    use RefreshDatabase;\n\n    public function test_owner_can_create_project(): void\n    {\n        $user = User::factory()->create();\n\n        $response = $this->actingAs($user)->postJson('\u002Fapi\u002Fprojects', [\n            'name' => 'New Project',\n        ]);\n\n        $response->assertCreated();\n        $this->assertDatabaseHas('projects', ['name' => 'New Project']);\n    }\n}\n```\n\n### Feature Test Example (HTTP Layer)\n\n```php\nuse App\\Models\\Project;\nuse App\\Models\\User;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\nuse Tests\\TestCase;\n\nfinal class ProjectIndexTest extends TestCase\n{\n    use RefreshDatabase;\n\n    public function test_projects_index_returns_paginated_results(): void\n    {\n        $user = User::factory()->create();\n        Project::factory()->count(3)->for($user)->create();\n\n        $response = $this->actingAs($user)->getJson('\u002Fapi\u002Fprojects');\n\n        $response->assertOk();\n        $response->assertJsonStructure(['success', 'data', 'error', 'meta']);\n    }\n}\n```\n\n### Pest Example\n\n```php\nuse App\\Models\\User;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\n\nuse function Pest\\Laravel\\actingAs;\nuse function Pest\\Laravel\\assertDatabaseHas;\n\nuses(RefreshDatabase::class);\n\ntest('owner can create project', function () {\n    $user = User::factory()->create();\n\n    $response = actingAs($user)->postJson('\u002Fapi\u002Fprojects', [\n        'name' => 'New Project',\n    ]);\n\n    $response->assertCreated();\n    assertDatabaseHas('projects', ['name' => 'New Project']);\n});\n```\n\n### Feature Test Pest Example (HTTP Layer)\n\n```php\nuse App\\Models\\Project;\nuse App\\Models\\User;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\n\nuse function Pest\\Laravel\\actingAs;\n\nuses(RefreshDatabase::class);\n\ntest('projects index returns paginated results', function () {\n    $user = User::factory()->create();\n    Project::factory()->count(3)->for($user)->create();\n\n    $response = actingAs($user)->getJson('\u002Fapi\u002Fprojects');\n\n    $response->assertOk();\n    $response->assertJsonStructure(['success', 'data', 'error', 'meta']);\n});\n```\n\n### Factories and States\n\n- Use factories for test data\n- Define states for edge cases (archived, admin, trial)\n\n```php\n$user = User::factory()->state(['role' => 'admin'])->create();\n```\n\n### Database Testing\n\n- Use `RefreshDatabase` for clean state\n- Keep tests isolated and deterministic\n- Prefer `assertDatabaseHas` over manual queries\n\n### Persistence Test Example\n\n```php\nuse App\\Models\\Project;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\nuse Tests\\TestCase;\n\nfinal class ProjectRepositoryTest extends TestCase\n{\n    use RefreshDatabase;\n\n    public function test_project_can_be_retrieved_by_slug(): void\n    {\n        $project = Project::factory()->create(['slug' => 'alpha']);\n\n        $found = Project::query()->where('slug', 'alpha')->firstOrFail();\n\n        $this->assertSame($project->id, $found->id);\n    }\n}\n```\n\n### Fakes for Side Effects\n\n- `Bus::fake()` for jobs\n- `Queue::fake()` for queued work\n- `Mail::fake()` and `Notification::fake()` for notifications\n- `Event::fake()` for domain events\n\n```php\nuse Illuminate\\Support\\Facades\\Queue;\n\nQueue::fake();\n\ndispatch(new SendOrderConfirmation($order->id));\n\nQueue::assertPushed(SendOrderConfirmation::class);\n```\n\n```php\nuse Illuminate\\Support\\Facades\\Notification;\n\nNotification::fake();\n\n$user->notify(new InvoiceReady($invoice));\n\nNotification::assertSentTo($user, InvoiceReady::class);\n```\n\n### Auth Testing (Sanctum)\n\n```php\nuse Laravel\\Sanctum\\Sanctum;\n\nSanctum::actingAs($user);\n\n$response = $this->getJson('\u002Fapi\u002Fprojects');\n$response->assertOk();\n```\n\n### HTTP and External Services\n\n- Use `Http::fake()` to isolate external APIs\n- Assert outbound payloads with `Http::assertSent()`\n\n### Coverage Targets\n\n- Enforce 80%+ coverage for unit + feature tests\n- Use `pcov` or `XDEBUG_MODE=coverage` in CI\n\n### Test Commands\n\n- `php artisan test`\n- `vendor\u002Fbin\u002Fphpunit`\n- `vendor\u002Fbin\u002Fpest`\n\n### Test Configuration\n\n- Use `phpunit.xml` to set `DB_CONNECTION=sqlite` and `DB_DATABASE=:memory:` for fast tests\n- Keep separate env for tests to avoid touching dev\u002Fprod data\n\n### Authorization Tests\n\n```php\nuse Illuminate\\Support\\Facades\\Gate;\n\n$this->assertTrue(Gate::forUser($user)->allows('update', $project));\n$this->assertFalse(Gate::forUser($otherUser)->allows('update', $project));\n```\n\n### Inertia Feature Tests\n\nWhen using Inertia.js, assert on the component name and props with the Inertia testing helpers.\n\n```php\nuse App\\Models\\User;\nuse Inertia\\Testing\\AssertableInertia;\nuse Illuminate\\Foundation\\Testing\\RefreshDatabase;\nuse Tests\\TestCase;\n\nfinal class DashboardInertiaTest extends TestCase\n{\n    use RefreshDatabase;\n\n    public function test_dashboard_inertia_props(): void\n    {\n        $user = User::factory()->create();\n\n        $response = $this->actingAs($user)->get('\u002Fdashboard');\n\n        $response->assertOk();\n        $response->assertInertia(fn (AssertableInertia $page) => $page\n            ->component('Dashboard')\n            ->where('user.id', $user->id)\n            ->has('projects')\n        );\n    }\n}\n```\n\nPrefer `assertInertia` over raw JSON assertions to keep tests aligned with Inertia responses.\n",{"name":5,"origin":41,"description":7},"ECC","main","a298c929b6cbd662e1fce54302ce520d5ceea1a5",".agents\u002Flibrary\u002Fskills\u002Flaravel-tdd","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain","https:\u002F\u002Fgithub.com\u002FPrekzursil","2026-11-02 14:30:57",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add Prekzursil\u002Fagent-skills-toolchain --skill laravel-tdd",{"tool":54,"command":55},"bunx","bunx skills add Prekzursil\u002Fagent-skills-toolchain --skill laravel-tdd",{"tool":57,"command":58},"pnpm","pnpm dlx skills add Prekzursil\u002Fagent-skills-toolchain --skill laravel-tdd","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Flaravel-tdd\u002FSKILL.md",true,[62],{"path":63,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":66,"sourceHtmlUrl":67},"agents\u002Fopenai.yaml","REFERENCE","参考文档",82,"https:\u002F\u002Fgithub.com\u002Fnexuslinkproductions\u002Fyuri-os\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fgsap-plugins\u002Fagents\u002Fopenai.yaml",[69,91,120,145,159,174],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":36},"01M6DF7D7478R55P46REYH4QAC","clarify-requirements","Resolve genuine pre-execution ambiguity by scanning repo context, generating 1-6 grounded options, and asking 1-3 focused questions via AskUserQuestion. NOT for mid-task use (injection risk); NOT when the goal is already unambiguous; use to disambiguate vague prompts before any file edits.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fworkspace-hooks\u002Fskills\u002Fclarify-requirements\u002FSKILL.md",[],[76,77,78,79,80,81,82,83,84,85,86,87,88,89,90],"clarify requirements","clarify","requirements","risk","options","task","prompts","goal","scanning","use","context","repo","injection","execution","file",{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":100,"publishedAt":36},"01M6DF79CA4BHJS66J8EZDBPWJ","openmm-md","Run FREE, open-source, Windows-native GPU molecular dynamics via the openmm-md MCP (OpenMM + CUDA on the local NVIDIA GPU). Use for protein \u002F protein-ligand MD when you want a free stack or are on Windows without a Schrodinger license. Covers the full workflow (prepare, solvate, minimize, equilibrate, production, analyze, mmgbsa) AND an honest decision guide vs Schrodinger Desmond, including how to run Desmond legitimately on Linux or a cloud GPU with a real license. This is a deliberately LESSER free alternative and does NOT replace the schrodinger MCP tools. Do NOT use it to pick a free tool when a validated FEP+, WaterMap, IFD-MD, or Prime MM-GBSA result is actually required.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fmcp\u002Fopenmm-md-mcp\u002Fskill\u002Fopenmm-md\u002FSKILL.md",[97],{"categoryNo":98,"categoryName":99,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[101,102,103,104,105,106,107,108,109,110,111,112,113,114,85,115,116,117,118,119],"openmm md","how","decision","pick","linux","analyze","tool","stack","open","NVIDIA","gpu","license","workflow","windows","free","molecular dynamics","local","do","MCP",{"skillNo":121,"name":122,"nameZh":6,"description":123,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":124,"categories":125,"keywords":130,"publishedAt":36},"01M6DF76C1MG85VEWP8VZCBNMN","visual-review","Take screenshots of web pages and UI using Playwright for visual review and iteration","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fvisual-review\u002FSKILL.md",[126,129],{"categoryNo":127,"categoryName":128,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[131,132,133,134,135,136,137,138,139,140,102,141,142,143,144],"review","visual","visual review","pages","web","false","iteration","take","check","slides","ui","screenshot","playwright","screenshots",{"skillNo":146,"name":147,"nameZh":6,"description":148,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":149,"categories":150,"keywords":151,"publishedAt":36},"01M6DF73AQVCBZKEN0YXEX9FXP","status","Diagnostic status report — shows metaswarm installation state, project setup, and potential issues","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstatus\u002FSKILL.md",[],[147,152,153,154,155,156,157,158],"setup","report","project","installation","project setup","issues","state",{"skillNo":160,"name":161,"nameZh":6,"description":162,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":163,"categories":164,"keywords":166,"publishedAt":36},"01M6DF6X6C2XB0P6GX76P7TTYV","start","Use when starting work on any task, when the user mentions metaswarm, or when the user wants to begin tracked development work","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstart\u002FSKILL.md",[165],{"categoryNo":98,"categoryName":99,"taxonomyType":21,"taxonomyTypeDesc":22},[161,167,81,168,169,170,85,171,172,173,32],"start issue","issue","ready","work on issue","user","work","work on",{"skillNo":175,"name":152,"nameZh":6,"description":176,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":177,"categories":178,"keywords":179,"publishedAt":36},"01M6DF6QMJ9AJKFKHHKRT005PQ","Interactive project setup — detects your project, configures metaswarm, writes project-local files","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fsetup\u002FSKILL.md",[],[152,154,117,180,156,181],"files","interactive"]