code-ai-installer 1.1.4 → 1.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/dist/banner.d.ts +4 -0
- package/dist/banner.js +35 -0
- package/dist/index.js +109 -22
- package/dist/sourceResolver.d.ts +2 -0
- package/dist/sourceResolver.js +27 -5
- package/dist/types.d.ts +1 -0
- package/locales/en/.agents/a11y_baseline/SKILL.md +41 -0
- package/locales/en/.agents/adr_log/SKILL.md +69 -0
- package/locales/en/.agents/api_contract_compliance_review/SKILL.md +18 -0
- package/locales/en/.agents/api_contracts/SKILL.md +42 -0
- package/locales/en/.agents/architecture_compliance_review/SKILL.md +17 -0
- package/locales/en/.agents/architecture_doc/SKILL.md +92 -0
- package/locales/en/.agents/board/SKILL.md +43 -0
- package/locales/en/.agents/cloud_infrastructure_security/SKILL.md +68 -0
- package/locales/en/.agents/code_review_checklist/SKILL.md +47 -0
- package/locales/en/.agents/current_state_analysis/SKILL.md +44 -0
- package/locales/en/.agents/data_model/SKILL.md +40 -0
- package/locales/en/.agents/dependency_supply_chain_review/SKILL.md +20 -0
- package/locales/en/.agents/deployment_ci_plan/SKILL.md +51 -0
- package/locales/en/.agents/design_intake/SKILL.md +71 -0
- package/locales/en/.agents/design_parity_review/SKILL.md +73 -0
- package/locales/en/.agents/design_systems/SKILL.md +15 -0
- package/locales/en/.agents/dev_reference_snippets/SKILL.md +397 -0
- package/locales/en/.agents/docker_kubernetes_architecture/SKILL.md +144 -0
- package/locales/en/.agents/es2025_beast_practices/SKILL.md +15 -0
- package/locales/en/.agents/gates/SKILL.md +35 -0
- package/locales/en/.agents/go_beast_practices/SKILL.md +23 -0
- package/locales/en/.agents/handoff/SKILL.md +52 -0
- package/locales/en/.agents/k8s_manifests_conventions/SKILL.md +175 -0
- package/locales/en/.agents/memory/SKILL.md +29 -0
- package/locales/en/.agents/mongodb_mongoose_best_practices/SKILL.md +233 -0
- package/locales/en/.agents/node_express_beast_practices/SKILL.md +30 -0
- package/locales/en/.agents/observability_logging/SKILL.md +16 -0
- package/locales/en/.agents/observability_plan/SKILL.md +38 -0
- package/locales/en/.agents/observability_review/SKILL.md +20 -0
- package/locales/en/.agents/performance_review_baseline/SKILL.md +17 -0
- package/locales/en/.agents/pm_backlog/SKILL.md +32 -0
- package/locales/en/.agents/pm_interview/SKILL.md +56 -0
- package/locales/en/.agents/pm_prd/SKILL.md +56 -0
- package/locales/en/.agents/qa_api_contract_tests/SKILL.md +16 -0
- package/locales/en/.agents/qa_e2e_playwright/SKILL.md +0 -0
- package/locales/en/.agents/qa_manual_run/SKILL.md +16 -0
- package/locales/en/.agents/qa_security_smoke_tests/SKILL.md +14 -0
- package/locales/en/.agents/qa_test_plan/SKILL.md +20 -0
- package/locales/en/.agents/qa_ui_a11y_smoke/SKILL.md +12 -0
- package/locales/en/.agents/react_15_3_wix_iframe/SKILL.md +20 -0
- package/locales/en/.agents/react_beast_practices/SKILL.md +29 -0
- package/locales/en/.agents/release_gate/SKILL.md +77 -0
- package/locales/en/.agents/release_gate_checklist_template/SKILL.md +68 -0
- package/locales/en/.agents/review_reference_snippets/SKILL.md +436 -0
- package/locales/en/.agents/security_baseline_dev/SKILL.md +16 -0
- package/locales/en/.agents/security_review/SKILL.md +55 -0
- package/locales/en/.agents/security_review_baseline/SKILL.md +25 -0
- package/locales/en/.agents/state_rtk_beast_practices/SKILL.md +15 -0
- package/locales/en/.agents/state_zustand_beast_practices/SKILL.md +11 -0
- package/locales/en/.agents/styling_css_stack/SKILL.md +12 -0
- package/locales/en/.agents/system_design_checklist/SKILL.md +48 -0
- package/locales/en/.agents/tanstack_beast_practices/SKILL.md +19 -0
- package/locales/en/.agents/tdd_workflow/SKILL.md +34 -0
- package/locales/en/.agents/testing_strategy_js/SKILL.md +30 -0
- package/locales/en/.agents/tests_quality_review/SKILL.md +18 -0
- package/locales/en/.agents/threat_model_baseline/SKILL.md +57 -0
- package/locales/en/.agents/tooling_bun_biome/SKILL.md +17 -0
- package/locales/en/.agents/typescript_beast_practices/SKILL.md +15 -0
- package/locales/en/.agents/ui_a11y_smoke_review/SKILL.md +15 -0
- package/locales/en/.agents/ui_inventory/SKILL.md +50 -0
- package/locales/en/.agents/ux_discovery/SKILL.md +48 -0
- package/locales/en/.agents/ux_spec/SKILL.md +56 -0
- package/locales/en/.agents/wix_self_hosted_embedded_script/SKILL.md +88 -0
- package/locales/en/AGENTS.md +120 -0
- package/locales/en/agents/architect.md +239 -0
- package/locales/en/agents/conductor.md +205 -0
- package/locales/en/agents/product_manager.md +119 -0
- package/locales/en/agents/reviewer.md +200 -0
- package/locales/en/agents/senior_full_stack.md +216 -0
- package/locales/en/agents/tester.md +186 -0
- package/locales/en/agents/ux_ui_designer.md +144 -0
- package/package.json +3 -2
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: testing_strategy_js
|
|
3
|
+
description: Testing strategy for JS/TS projects: unit (vitest/jest), integration (API/DB), e2e (playwright) + organization of files and mocks of external services.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Testing Strategy (JS/TS)
|
|
7
|
+
|
|
8
|
+
## Unit
|
|
9
|
+
- Pure functions, utilities, hooks/component logic
|
|
10
|
+
- For UI: test user behavior
|
|
11
|
+
|
|
12
|
+
## Integration
|
|
13
|
+
- API routes/handlers
|
|
14
|
+
- Repositories/DB (or test container/emulator)
|
|
15
|
+
- Integrations via mocks/contracts
|
|
16
|
+
|
|
17
|
+
## E2E (Playwright)
|
|
18
|
+
- Only critical flows (login/key CRUD/payment/search) - by task
|
|
19
|
+
|
|
20
|
+
## Organization
|
|
21
|
+
- Tests next to the code (unit)
|
|
22
|
+
- Integration next to the route/module
|
|
23
|
+
- E2E in a separate folder (e2e/)
|
|
24
|
+
|
|
25
|
+
## Moki
|
|
26
|
+
- Mock external services (OpenAI/Redis/Supabase/HTTP)
|
|
27
|
+
- Don’t mock everything: preserve the meaning of integration tests
|
|
28
|
+
|
|
29
|
+
## See also
|
|
30
|
+
- Examples: `$dev_reference_snippets`
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tests_quality_review
|
|
3
|
+
description: Review of the quality of unit/integration tests: scenario coverage, boundaries, stability, absence of flakes and test “magic”.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Tests Quality Review
|
|
7
|
+
|
|
8
|
+
## Check
|
|
9
|
+
- Tests check behavior, not implementation details
|
|
10
|
+
- There are happy + edge + error paths
|
|
11
|
+
- Integration tests actually test integration (API/DB/contracts), and are not “over-done”
|
|
12
|
+
- Tests are independent (no hidden order)
|
|
13
|
+
- Flakes: timings/random/external network → eliminated
|
|
14
|
+
- The names of the tests are readable, the structure is clear
|
|
15
|
+
|
|
16
|
+
## Exit
|
|
17
|
+
- Missing cases (list)
|
|
18
|
+
- Brittle tests (what to fix)
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: threat_model_baseline
|
|
3
|
+
description: Threat baseline for MVP: assets, attack vectors, measures. Considers OWASP risks and roles/permissions.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Threat Model Baseline
|
|
7
|
+
|
|
8
|
+
## Target
|
|
9
|
+
Build security into the design before the code.
|
|
10
|
+
|
|
11
|
+
## Principles
|
|
12
|
+
- Defense in depth
|
|
13
|
+
- Least privilege
|
|
14
|
+
- Input validation at boundaries
|
|
15
|
+
- Secure by default
|
|
16
|
+
- Audit trail for critical operations (if applicable)
|
|
17
|
+
|
|
18
|
+
## Inputs
|
|
19
|
+
- PRD (PII/payments/critical operations)
|
|
20
|
+
- Roles/permissions
|
|
21
|
+
- Integrations
|
|
22
|
+
- API Contracts
|
|
23
|
+
|
|
24
|
+
## Output (structure)
|
|
25
|
+
- Assets
|
|
26
|
+
- Attack surfaces
|
|
27
|
+
- Threats → mitigations
|
|
28
|
+
- Security requirements for implementation and tests
|
|
29
|
+
|
|
30
|
+
## 1) Assets (what we protect)
|
|
31
|
+
- accounts/sessions
|
|
32
|
+
- user data (PII)
|
|
33
|
+
- payments/orders (if any)
|
|
34
|
+
- admin access
|
|
35
|
+
|
|
36
|
+
## 2) Attack surfaces
|
|
37
|
+
- public endpoints
|
|
38
|
+
- uploading files
|
|
39
|
+
- webhooks
|
|
40
|
+
- auth flows
|
|
41
|
+
|
|
42
|
+
## 3) Main threats → measures (minimum)
|
|
43
|
+
- Injection (SQL/NoSQL/command) → validation/parameterization
|
|
44
|
+
- XSS → escaping/sanitization/Content Security Policy (if applicable)
|
|
45
|
+
- CSRF → CSRF tokens / sameSite cookies (if applicable)
|
|
46
|
+
- Auth bypass → strict Authz check on the server
|
|
47
|
+
- SSRF → allowlist/prohibition of internal addresses (if there is a fetch of external URLs)
|
|
48
|
+
- Secrets leakage → secret storage + logging prohibited
|
|
49
|
+
- Rate limiting / brute force → limits/blocking/captcha (if necessary)
|
|
50
|
+
|
|
51
|
+
## 4) Security requirements for implementation
|
|
52
|
+
- where audit logging is required
|
|
53
|
+
- requirements for passwords/sessions/tokens
|
|
54
|
+
- data storage/deletion policy
|
|
55
|
+
|
|
56
|
+
## Note
|
|
57
|
+
If there is compliance (GDPR, etc.) - fix mandatory measures and retention periods.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tooling_bun_biome
|
|
3
|
+
description: Tooling: biomejs (lint/format) and bunjs (runtime/package manager) - setting up scripts, uniform style, dev-loop acceleration.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Tooling (Bun + Biome)
|
|
7
|
+
|
|
8
|
+
## Biome
|
|
9
|
+
- Uniform format and linting rules
|
|
10
|
+
- Autofix in pre-commit/CI (if accepted)
|
|
11
|
+
|
|
12
|
+
## Bun
|
|
13
|
+
- Use as runtime/package manager if allowed by the project
|
|
14
|
+
- Scripts: dev/test/lint/format/coverage
|
|
15
|
+
|
|
16
|
+
## See also
|
|
17
|
+
- Examples: `$dev_reference_snippets`
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: typescript_beast_practices
|
|
3
|
+
description: TypeScript practices: strong typing, type-safe contracts, validation schemes (zod/pydantic-analog on the stack), safe DTOs and minification of any.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: TypeScript Beast Practices
|
|
7
|
+
|
|
8
|
+
## Target
|
|
9
|
+
Type-safe contracts and refactor without fear.
|
|
10
|
+
|
|
11
|
+
## Rules
|
|
12
|
+
- strict whenever possible
|
|
13
|
+
- DTO/Contracts are typed and validated at boundaries
|
|
14
|
+
- Do not use any without explicit justification
|
|
15
|
+
- Common types and utilities - in one place, without cyclic dependencies
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ui_a11y_smoke_review
|
|
3
|
+
description: Quick UI/a11y smoke review: states loading/empty/error, focus, keyboard, aria/labels by a11y baseline and UX Spec.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: UI & A11y Smoke Review
|
|
7
|
+
|
|
8
|
+
## Check
|
|
9
|
+
- There are loading/empty/error states according to UX Spec
|
|
10
|
+
- Focus styles are visible, you can use the keyboard
|
|
11
|
+
- Forms: label/aria, error messages available
|
|
12
|
+
- No obvious content/CTA regressions
|
|
13
|
+
|
|
14
|
+
## Exit
|
|
15
|
+
- Findings + recommendations
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ui_inventory
|
|
3
|
+
description: Compile an inventory of UI components and rules for reuse: basic components, compositional components, patterns (forms, tables, dialogs), design tokens (minimum).
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: UI Components Inventory
|
|
7
|
+
|
|
8
|
+
## Target
|
|
9
|
+
Reduce development costs and maintain UI consistency.
|
|
10
|
+
|
|
11
|
+
## Exit
|
|
12
|
+
List of components in catalog form:
|
|
13
|
+
|
|
14
|
+
## 1) Basic (atoms)
|
|
15
|
+
- Button (variants: primary/secondary/ghost/destructive, sizes)
|
|
16
|
+
- Input / Textarea
|
|
17
|
+
- Select / Combobox
|
|
18
|
+
- Checkbox / Radio / Switch
|
|
19
|
+
- Badge / Tag
|
|
20
|
+
- Spinner / Skeleton
|
|
21
|
+
- Icon
|
|
22
|
+
- Tooltip
|
|
23
|
+
|
|
24
|
+
## 2) Compounds (molecules/organisms)
|
|
25
|
+
- FormField (label + control + help + error)
|
|
26
|
+
- Modal / Dialog
|
|
27
|
+
- Toast / Notification
|
|
28
|
+
- Table (sorting/filter/pagination if necessary)
|
|
29
|
+
- EmptyState (icon + text + CTA)
|
|
30
|
+
- ErrorState (message + retry)
|
|
31
|
+
- Pagination
|
|
32
|
+
- Navbar / Sidebar
|
|
33
|
+
- Breadcrumbs (if needed)
|
|
34
|
+
|
|
35
|
+
## 3) Patterns
|
|
36
|
+
- Loading strategy (skeleton vs spinner)
|
|
37
|
+
- Empty vs zero-results
|
|
38
|
+
- Bugs: levels (inline/page/toast)
|
|
39
|
+
- Confirmation of destructive actions
|
|
40
|
+
- Processing long operations (progress, optimistic UI)
|
|
41
|
+
|
|
42
|
+
## 4) Minimum design tokens (if there is no design system)
|
|
43
|
+
- Spacing scale (for example: 4/8/12/16/24/32)
|
|
44
|
+
- Border radius levels
|
|
45
|
+
- Typography: headings/text/captions
|
|
46
|
+
- State colors: success/warn/error/info (without specific hex, if not specified)
|
|
47
|
+
|
|
48
|
+
## Rule
|
|
49
|
+
If there is a ready-made design system, inventory is tied to its components/options.
|
|
50
|
+
If not, describe components with minimal parameters sufficient for implementation and testing of UX Spec.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ux_discovery
|
|
3
|
+
description: Clarify UX introductory to PRD: roles, main flows, navigation, platforms (responsive), brand/references, localization, edge cases.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: UX Discovery
|
|
7
|
+
|
|
8
|
+
## Target
|
|
9
|
+
Collect the missing UX context before creating the UX Spec.
|
|
10
|
+
|
|
11
|
+
## When to use
|
|
12
|
+
- Immediately after receiving the PRD
|
|
13
|
+
- When requirements/roles/flows change
|
|
14
|
+
|
|
15
|
+
## Exit
|
|
16
|
+
- List of clarifying questions (5–15), sorted by criticality
|
|
17
|
+
- Assumptions, if you can’t move without them
|
|
18
|
+
- Draft list of screens/streams
|
|
19
|
+
|
|
20
|
+
## Questions (ask relevant ones)
|
|
21
|
+
### Platform and layout
|
|
22
|
+
- Is it desktop-first, mobile-first or equivalent to responsive?
|
|
23
|
+
- Key breakpoints/minimum sizes?
|
|
24
|
+
|
|
25
|
+
### Roles and rights
|
|
26
|
+
- What are the user roles? What is prohibited for each role?
|
|
27
|
+
- Do you need admin/moderation?
|
|
28
|
+
|
|
29
|
+
### Navigation and structure
|
|
30
|
+
- What are the main sections?
|
|
31
|
+
- Is there deep linking/link sharing?
|
|
32
|
+
|
|
33
|
+
### Brand/visual expectations
|
|
34
|
+
- Is there a design system/references?
|
|
35
|
+
- If not, do we use a “system UI” (for example, standard patterns of the selected framework)?
|
|
36
|
+
|
|
37
|
+
### Localization
|
|
38
|
+
- One language or several?
|
|
39
|
+
- Date/time/currency formats?
|
|
40
|
+
|
|
41
|
+
### UX edge cases
|
|
42
|
+
- What do we show if the data is empty?
|
|
43
|
+
- What do we do in case of network/validation errors?
|
|
44
|
+
- Which operations are potentially long (need progress/skeletons)?
|
|
45
|
+
|
|
46
|
+
## Rule
|
|
47
|
+
If the answer is critical for the architecture/routing/API, be sure to clarify.
|
|
48
|
+
If you can move forward with a safe assumption, make the assumption and celebrate.
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ux_spec
|
|
3
|
+
description: Generate UX Spec: user flows, IA, list of screens, specification of each screen (actions/sections/validations/states), UX quality criteria for development and testing.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: UX Spec (Flows + Screens + States)
|
|
7
|
+
|
|
8
|
+
## Target
|
|
9
|
+
Make a specification according to which the UI can be implemented without “speculation”.
|
|
10
|
+
|
|
11
|
+
## Exit
|
|
12
|
+
UX Spec in structure:
|
|
13
|
+
|
|
14
|
+
## 1) Users & Roles
|
|
15
|
+
- Roles:
|
|
16
|
+
- Rights/restrictions:
|
|
17
|
+
|
|
18
|
+
## 2) Key User Flows
|
|
19
|
+
For each thread:
|
|
20
|
+
- Trigger (where to start)
|
|
21
|
+
- Steps (1..n)
|
|
22
|
+
- Success outcome
|
|
23
|
+
- Failure/edge outcomes
|
|
24
|
+
|
|
25
|
+
## 3) Information Architecture (IA)
|
|
26
|
+
- Navigation map (sections/screens)
|
|
27
|
+
- Access rules (if the role affects visibility)
|
|
28
|
+
|
|
29
|
+
## 4) Screens Spec (for each screen)
|
|
30
|
+
### Screen: <Name>
|
|
31
|
+
- Purpose:
|
|
32
|
+
- Primary actions:
|
|
33
|
+
- Sections/components:
|
|
34
|
+
- Forms & validation (if available):
|
|
35
|
+
- States:
|
|
36
|
+
- Loading:
|
|
37
|
+
- Empty:
|
|
38
|
+
- Error:
|
|
39
|
+
- Success:
|
|
40
|
+
- Notifications (toasts/modals):
|
|
41
|
+
- Permissions notes:
|
|
42
|
+
- Analytics events (if needed):
|
|
43
|
+
- Notes:
|
|
44
|
+
|
|
45
|
+
## 5) UI Rules (minimal)
|
|
46
|
+
- Conventions: primary/secondary buttons, destructive actions, confirmations
|
|
47
|
+
- Tables/lists: sorting/filters/pagination (if applicable)
|
|
48
|
+
- Forms: inline errors, disabled submit, required markers
|
|
49
|
+
|
|
50
|
+
## Quality (checklist)
|
|
51
|
+
- No “holes”: every critical scenario from the PRD is covered by a flow + screen
|
|
52
|
+
- For screens, the loading/empty/error/success states are described
|
|
53
|
+
- Validation of forms is specific
|
|
54
|
+
- There are rules for destructive actions (confirm/undo)
|
|
55
|
+
- All sections/components on the screen are indicated (there is no “and there will be ...”)
|
|
56
|
+
- All user actions are indicated (clicks, navigation, forms)
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: wix_self_hosted_embedded_script
|
|
3
|
+
description: Practical runbook for Wix Self-Hosted Embedded Script: HTTPS locally, install webhook, embed script, resolve appInstanceId, DB-driven widget config, common errors and DEMO-ready check.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Wix Self-Hosted Embedded Script
|
|
7
|
+
|
|
8
|
+
## When to activate
|
|
9
|
+
- You need to implement or repair the Embedded Script extension in the Wix Self-Hosted app.
|
|
10
|
+
- It is necessary for the widget on the published site to take settings from the database via the backend.
|
|
11
|
+
- There are problems with install webhook, appInstanceId, HTTPS/certificate, blank screen in Wix.
|
|
12
|
+
|
|
13
|
+
## Mandatory rules
|
|
14
|
+
- Only `https://` URL for Wix extension and local development.
|
|
15
|
+
- No mock data in working flows.
|
|
16
|
+
- The Widget is rendered from the real backend payload (`/api/v1/widget/:appInstanceId`).
|
|
17
|
+
- All functions with JSDoc.
|
|
18
|
+
|
|
19
|
+
## Basic architecture
|
|
20
|
+
- Dashboard: manages settings and coupons.
|
|
21
|
+
- API: stores settings/coupons, processes OAuth/webhooks, makes embed script.
|
|
22
|
+
- Embedded script: loaded on the user's website, requests widget config from the API, shows popup/launcher.
|
|
23
|
+
- Gateway (Caddy): single HTTPS point (`https://localhost:5173`).
|
|
24
|
+
|
|
25
|
+
## Contract embedded script flow
|
|
26
|
+
1. Wix uploads:
|
|
27
|
+
- `<script id="smart-cart-rescue-embedded-script" src="https://<host>/widget/embedded-script.js?appInstanceId=<id>" async="true"></script>`
|
|
28
|
+
2. The script defines `apiOrigin` and `appInstanceId`:
|
|
29
|
+
- from query `appInstanceId`, or
|
|
30
|
+
- via `GET /api/v1/widget/resolve-instance?siteOrigin=<window.location.origin>`.
|
|
31
|
+
3. Script reads payload:
|
|
32
|
+
- `GET /api/v1/widget/:appInstanceId`
|
|
33
|
+
4. Script renders UI only from payload:
|
|
34
|
+
- overlay title/text/bg
|
|
35
|
+
- CTA text
|
|
36
|
+
- tab emoji/text
|
|
37
|
+
- timer settings
|
|
38
|
+
- latest coupon (if available)
|
|
39
|
+
|
|
40
|
+
## What should be in the API
|
|
41
|
+
- `GET /api/v1/widget/:appInstanceId`
|
|
42
|
+
- `GET /api/v1/widget/resolve-instance?siteOrigin=...`
|
|
43
|
+
- `POST /api/v1/embedded-script/embed/:appInstanceId`
|
|
44
|
+
- `POST /api/webhooks/v1/install`
|
|
45
|
+
- `POST /api/webhooks/v1/uninstall`
|
|
46
|
+
- `GET/PUT /api/v1/settings/:appInstanceId`
|
|
47
|
+
|
|
48
|
+
## Install webhook and embed
|
|
49
|
+
- On `install`:
|
|
50
|
+
- extract `appInstanceId` from webhook JWT,
|
|
51
|
+
- upsert installation + default settings,
|
|
52
|
+
- call embed script API,
|
|
53
|
+
- record audit event.
|
|
54
|
+
- For manual recovery:
|
|
55
|
+
- `POST /api/v1/embedded-script/embed/:appInstanceId`
|
|
56
|
+
|
|
57
|
+
## HTTPS and local development
|
|
58
|
+
- Local entry point: `https://localhost:5173`.
|
|
59
|
+
- The certificate must be trusted in the OS (not just browser bypass).
|
|
60
|
+
- If the iframe in `manage.wix.com` is empty:
|
|
61
|
+
- check trusted cert,
|
|
62
|
+
- disable adblock/shields for `manage.wix.com` and `localhost`,
|
|
63
|
+
- hard refresh and/or clean profile.
|
|
64
|
+
|
|
65
|
+
## Frequent errors and diagnostics
|
|
66
|
+
- `NET::ERR_CERT_AUTHORITY_INVALID`:
|
|
67
|
+
- the certificate is not trusted by the system.
|
|
68
|
+
- White screen in Wix iframe:
|
|
69
|
+
- extension URL is not HTTPS or is blocked by extensions.
|
|
70
|
+
- `App not found for script` / `404`:
|
|
71
|
+
- `appInstanceId` not found, `resolve-instance` path broken.
|
|
72
|
+
- Script loaded, but no UI:
|
|
73
|
+
- script runtime error or invalid widget payload.
|
|
74
|
+
- API 403/permission:
|
|
75
|
+
- there are not enough Wix scopes/token for the required API.
|
|
76
|
+
|
|
77
|
+
## Minimum smoke-checklist (DEMO-ready)
|
|
78
|
+
1. Dashboard saves settings in the database.
|
|
79
|
+
2. `GET /api/v1/widget/:appInstanceId` returns the current DB values.
|
|
80
|
+
3. Embedded script is actually embedded in the site (visible in the DOM).
|
|
81
|
+
4. Popup/launcher works on a published site.
|
|
82
|
+
5. The timer behaves according to the requirements (without mock behavior).
|
|
83
|
+
6. The CTA performs the expected action (for example, copying the coupon code).
|
|
84
|
+
|
|
85
|
+
## Done criteria for a task
|
|
86
|
+
- End-to-end flow works in Wix (dashboard -> API -> embedded script -> storefront UI).
|
|
87
|
+
- No hardcoded/mock payload for production-like scenarios.
|
|
88
|
+
- There are verification instructions in the README/DEMO report.
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# AGENTS.md – Web Development Orchestra
|
|
2
|
+
|
|
3
|
+
## Source of truth by role
|
|
4
|
+
The roles are described in:
|
|
5
|
+
- agents/conductor.md
|
|
6
|
+
- agents/product_manager.md
|
|
7
|
+
- agents/ux_ui_designer.md
|
|
8
|
+
- agents/architect.md
|
|
9
|
+
- agents/senior_full_stack.md
|
|
10
|
+
- agents/reviewer.md
|
|
11
|
+
- agents/tester.md
|
|
12
|
+
|
|
13
|
+
Follow these roles when working. If necessary, open the appropriate role file and apply.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Skills (explicitly call)
|
|
18
|
+
Use skills (folders with `SKILL.md`). Full list:
|
|
19
|
+
|
|
20
|
+
###Core/Orchestration
|
|
21
|
+
- $board
|
|
22
|
+
- $handoff
|
|
23
|
+
- $memory
|
|
24
|
+
- $gates
|
|
25
|
+
- $release_gate
|
|
26
|
+
- $release_gate_checklist_template
|
|
27
|
+
|
|
28
|
+
### Product Management
|
|
29
|
+
- $pm_interview
|
|
30
|
+
- $pm_prd
|
|
31
|
+
- $pm_backlog
|
|
32
|
+
|
|
33
|
+
### UX/UI/Design
|
|
34
|
+
- $ux_discovery
|
|
35
|
+
- $ux_spec
|
|
36
|
+
- $ui_inventory
|
|
37
|
+
- $a11y_baseline
|
|
38
|
+
- $design_intake
|
|
39
|
+
- $design_parity_review
|
|
40
|
+
- $design_systems
|
|
41
|
+
- $ui_a11y_smoke_review
|
|
42
|
+
|
|
43
|
+
### Architecture
|
|
44
|
+
- $current_state_analysis
|
|
45
|
+
- $system_design_checklist
|
|
46
|
+
- $architecture_doc
|
|
47
|
+
- $architecture_compliance_review
|
|
48
|
+
- $adr_log
|
|
49
|
+
- $api_contracts
|
|
50
|
+
- $data_model
|
|
51
|
+
- $threat_model_baseline
|
|
52
|
+
- $observability_plan
|
|
53
|
+
- $deployment_ci_plan
|
|
54
|
+
- $docker_kubernetes_architecture
|
|
55
|
+
- $k8s_manifests_conventions
|
|
56
|
+
- $wix_self_hosted_embedded_script
|
|
57
|
+
|
|
58
|
+
### Development (Senior Full Stack)
|
|
59
|
+
- $tdd_workflow
|
|
60
|
+
- $testing_strategy_js
|
|
61
|
+
- $tests_quality_review
|
|
62
|
+
- $es2025_beast_practices
|
|
63
|
+
- $typescript_beast_practices
|
|
64
|
+
- $react_beast_practices
|
|
65
|
+
- $tanstack_beast_practices
|
|
66
|
+
- $state_zustand_beast_practices
|
|
67
|
+
- $state_rtk_beast_practices
|
|
68
|
+
- $styling_css_stack
|
|
69
|
+
- $tooling_bun_biome
|
|
70
|
+
- $node_express_beast_practices
|
|
71
|
+
- $go_beast_practices
|
|
72
|
+
- $security_baseline_dev
|
|
73
|
+
- $observability_logging
|
|
74
|
+
- $dev_reference_snippets
|
|
75
|
+
- $mongodb_mongoose_best_practices
|
|
76
|
+
- $wix_self_hosted_embedded_script
|
|
77
|
+
- $react_15_3_wix_iframe (conditionally, only if Wix iFrame / React 15.3)
|
|
78
|
+
|
|
79
|
+
### Review (Best Practices + Security)
|
|
80
|
+
- $code_review_checklist
|
|
81
|
+
- $api_contract_compliance_review
|
|
82
|
+
- $security_review
|
|
83
|
+
- $security_review_baseline
|
|
84
|
+
- $cloud_infrastructure_security
|
|
85
|
+
- $dependency_supply_chain_review
|
|
86
|
+
- $observability_review
|
|
87
|
+
- $performance_review_baseline
|
|
88
|
+
- $review_reference_snippets
|
|
89
|
+
|
|
90
|
+
### Testing (QA)
|
|
91
|
+
- $qa_test_plan
|
|
92
|
+
- $qa_manual_run
|
|
93
|
+
- $qa_api_contract_tests
|
|
94
|
+
- $qa_security_smoke_tests
|
|
95
|
+
- $qa_ui_a11y_smoke
|
|
96
|
+
- $qa_e2e_playwright
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Gates (Pipeline)
|
|
101
|
+
PM(PRD) → UX(UX Spec) → ARCH(Architecture/ADR/Contracts) → DEV(TDD) → REV(Security/Best) → TEST(Test plan/report) → RG(Release Gate)
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## Mandatory function documentation rule
|
|
106
|
+
- For all functions in the code base, use a JSDoc block in the format:
|
|
107
|
+
|
|
108
|
+
```js
|
|
109
|
+
/**
|
|
110
|
+
* Считает сумму двух чисел.
|
|
111
|
+
* @param {number} a - Первое число.
|
|
112
|
+
* @param {number} b - Второе число.
|
|
113
|
+
* @returns {number} Сумма a и b.
|
|
114
|
+
*/
|
|
115
|
+
function add(a, b) {
|
|
116
|
+
return a + b;
|
|
117
|
+
}
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
- The requirement is mandatory for DEV and REV stages.
|