Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 10 additions & 2 deletions skills/ffca-architecture/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
---
name: ffca-architecture
description: "Feature-First Clean Architecture orientation for Flutter monorepos: where code lives, layer boundaries, naming, and package organization."
when_to_use: Use when working in an FFCA monorepo (a features/ folder containing {feature}_domain, {feature}_data, or {feature}_presentation packages), or when the user asks about Feature-First Clean Architecture, monorepo structure, where code should live, layer dependencies, or package organization.
description: >
Feature-First Clean Architecture (FFCA) orientation for Flutter monorepos: where code lives, layer
boundaries, dependency rules, naming, and package organization. Use when working in an FFCA
monorepo, a features/ folder whose packages are named {feature}_domain, {feature}_data, and
{feature}_presentation, or when the user asks about Feature-First Clean Architecture, monorepo
structure, layer dependencies, or package organization. Triggers on "where should this code live",
"which package does this belong in", "is this dependency allowed", "can presentation import data",
"can domain depend on Flutter", "what goes in {feature}_domain", "how should I name this package",
and "explain the FFCA layers". If the repo instead uses packages/ with _repository and _api_client
packages, defer to vgv-ai-flutter-plugin's layered-architecture skill.
allowed-tools: Read Glob Grep
effort: high
---
Expand Down
13 changes: 11 additions & 2 deletions skills/ffca-audit/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,16 @@
---
name: ffca-audit
description: "Audit an FFCA monorepo for architecture compliance: the mechanical layer/naming/cycle checks plus a qualitative review, producing a per-package verdict table."
when_to_use: Use when auditing an FFCA monorepo for architecture compliance, reviewing the full dependency graph, assessing FFCA adoption in an existing project, or when the user asks for an architecture health check.
description: >
Audit an FFCA monorepo for architecture compliance: mechanical layer, naming, and cycle checks
plus a qualitative source review, producing a per-package verdict table. Use in an FFCA monorepo,
a features/ folder whose packages are named {feature}_domain, {feature}_data, and
{feature}_presentation, when auditing architecture compliance, reviewing the full dependency
graph, assessing FFCA adoption in an existing project, or before opening a PR that adds or moves
packages. Triggers on "audit the architecture", "is the architecture still clean", "check the repo
follows FFCA", "architecture health check", "find layer violations", "any dependency cycles",
"review the dependency graph", and "are we ready to open this PR". Reports only and never
auto-fixes. If the repo instead uses packages/ with _repository and _api_client packages, defer to
vgv-ai-flutter-plugin's layered-architecture skill.
allowed-tools: Task Read Glob Grep Bash
effort: high
---
Expand Down
12 changes: 10 additions & 2 deletions skills/ffca-cross-feature/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
---
name: ffca-cross-feature
description: "Cross-feature dependencies in FFCA: the Summary pattern, use cases that combine repositories, composing features, and feature-to-feature communication."
when_to_use: Use when one feature needs data or functionality from another feature, when sharing models across features, or when deciding between a use case and a new composing feature.
description: >
Cross-feature dependencies in FFCA: the Summary pattern, use cases that combine repositories,
composing features, and feature-to-feature communication. Use in an FFCA monorepo, a features/
folder whose packages are named {feature}_domain, {feature}_data, and {feature}_presentation, when
one feature needs data or behavior from another, when sharing models across features, or when
choosing between a use case and a new composing feature. Triggers on "feature A needs data from
feature B", "can cart import checkout", "share this model between features", "how do features talk
to each other", "should this be a use case or a new feature", "combine two repositories", and
"avoid a circular dependency between features". If the repo instead uses packages/ with
_repository and _api_client packages, defer to vgv-ai-flutter-plugin's layered-architecture skill.
allowed-tools: Read Glob Grep
effort: high
---
Expand Down
13 changes: 11 additions & 2 deletions skills/ffca-feature/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,16 @@
---
name: ffca-feature
description: "Scaffold and extend FFCA features: the three-package domain/data/presentation structure, models, repositories, use cases, DTOs, mappers, Cubits, and Modules."
when_to_use: Use when creating a new feature, headless feature, screen, or adding a layer to an existing feature in an FFCA monorepo. Covers the three-package scaffold, domain models, repositories, use cases, DTOs, mappers, Cubits, and Modules.
description: >
Scaffold and extend FFCA features: the three-package domain, data, and presentation structure,
models, repositories, use cases, DTOs, mappers, Cubits, and Modules. Use in an FFCA monorepo, a
features/ folder whose packages are named {feature}_domain, {feature}_data, and
{feature}_presentation, when creating a new feature, a headless feature, or a screen, or when
adding a layer, repository, use case, DTO, mapper, or Cubit to an existing feature. Triggers on
"add a feature package", "create a new feature", "scaffold the profile feature", "add a headless
feature", "add a repository to this feature", "add a use case", "map this DTO to a domain model",
"add a Cubit for this screen", and "wire up the feature Module". If the repo instead uses
packages/ with _repository and _api_client packages, defer to vgv-ai-flutter-plugin's
layered-architecture skill.
allowed-tools: Read Glob Grep Write Edit mcp__very_good_cli__create mcp__very_good_cli__packages_get
effort: high
---
Expand Down
12 changes: 10 additions & 2 deletions skills/ffca-routing/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
---
name: ffca-routing
description: "Routing and navigation for FFCA monorepos: callback injection, go_router_builder typed routes, the $extra hydration pattern, and feature isolation."
when_to_use: Use when adding screens, routes, navigation, deep links, or navigation callbacks in an FFCA monorepo.
description: >
Routing and navigation for FFCA monorepos: callback injection, go_router_builder typed routes, the
$extra hydration pattern, and keeping features isolated from each other's routes. Use in an FFCA
monorepo, a features/ folder whose packages are named {feature}_domain, {feature}_data, and
{feature}_presentation, when adding screens, routes, navigation, deep links, or navigation
callbacks. Triggers on "add a route for this screen", "navigate from one feature to another",
"where do routes live", "pass an object to the next screen", "hydrate $extra on deep link", "add a
deep link", "wire a navigation callback", and "can this feature import the router". If the repo
instead uses packages/ with _repository and _api_client packages, defer to vgv-ai-flutter-plugin's
layered-architecture skill.
allowed-tools: Read Glob Grep Write Edit
effort: high
---
Expand Down
Loading