Skip to main content

fastforge

Fastforge fundamentals: installing and upgrading the CLI, project configuration (.fastforge/config.yaml), workflow file syntax and troubleshooting (.fastforge/workflows/*.yml, "workflow validate" failures), app package analysis (fastforge analyze for APK/AAB/IPA/DMG/.app size, tech stack, and signing reports), the local Studio web UI (fastforge studio), and general "how do I use fastforge" questions. Use this skill whenever fastforge is mentioned and the request is not clearly one of the specialized scenarios: building/packaging apps is fastforge-package, uploading artifacts to distribution services is fastforge-publish, and App Store Connect / AppGallery Connect / Google Play operations are fastforge-stores. Also use it when a fastforge command fails and the cause is unclear, or when the user asks what fastforge can do.

Aller à l'installation

Informations de source

Dépôt
fastforgedev/fastforge
Dernière activité de la source
13 septembre 2026 à 07:36
Langue détectée de SKILL.md
anglais
Étoiles
1 146
Forks
242

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
4 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
fastforge
description
Fastforge fundamentals: installing and upgrading the CLI, project configuration (.fastforge/config.yaml), workflow file syntax and troubleshooting (.fastforge/workflows/*.yml, "workflow validate" failures), app package analysis (fastforge analyze for APK/AAB/IPA/DMG/.app size, tech stack, and signing reports), the local Studio web UI (fastforge studio), and general "how do I use fastforge" questions. Use this skill whenever fastforge is mentioned and the request is not clearly one of the specialized scenarios: building/packaging apps is fastforge-package, uploading artifacts to distribution services is fastforge-publish, and App Store Connect / AppGallery Connect / Google Play operations are fastforge-stores. Also use it when a fastforge command fails and the cause is unclear, or when the user asks what fastforge can do.
# Fastforge Fastforge is a CLI that builds, packages, and publishes apps (Flutter, native Android/iOS/macOS) with one configuration. This skill covers the CLI itself: installation, configuration, workflow files, artifact analysis, and routing to the right command or companion skill. ## Command map | Command | Purpose | Skill to consult | | --- | --- | --- | | `fastforge package` / `build` | Build and package artifacts | `fastforge-package` | | `fastforge publish` | Upload an existing artifact to a distribution target | `fastforge-publish` | | `fastforge appstore` / `appgallery` / `googleplay` / `store` | Store operations: builds, versions, review, tracks, catalog | `fastforge-stores` | | `fastforge workflow` | Run local YAML workflows | this skill, [references/workflow.md](references/workflow.md) | | `fastforge analyze` | Inspect APK/AAB/IPA/DMG/.app artifacts | this skill, [references/analyze.md](references/analyze.md) | | `fastforge studio` | Local web UI over projects (`serve`, `doctor`; `--port` 7391, `--no-open`) | this skill | | `fastforge release` | Runs legacy `distribute_options.yaml` releases — prefer `workflow` | this skill | | `fastforge upgrade` | Self-update from GitHub releases (`--force` reinstalls) | this skill | | `fastforge version-check` | Check GitHub for a newer release (`--current-only`: local version, no network) | this skill | ## Installation The CLI is a standalone binary; it does not bundle platform SDKs, build tools, signing tools, or third-party publishing clients. macOS / Linux (default path `/usr/local/bin/fastforge`; supports macOS arm64/x86_64, Linux aarch64/x86_64 GNU): ```bash curl -fsSL https://raw.githubusercontent.com/fastforgedev/fastforge/main/install.sh | sh ``` Pin a version (e.g. `0.7.0`, no `v`) or change the directory with `FASTFORGE_VERSION` / `FASTFORGE_INSTALL_DIR`, set on the `sh` side of the pipe: `curl -fsSL …/install.sh | FASTFORGE_VERSION=0.7.0 sh`. Windows x86_64/ARM64 (PowerShell; installs to `%LOCALAPPDATA%\fastforge\bin` and adds it to the user PATH): ```powershell iwr https://raw.githubusercontent.com/fastforgedev/fastforge/main/install.ps1 | iex ``` From source: `cargo install --path apps/cli` inside a clone of `https://github.com/fastforgedev/fastforge`. Locally built binaries print a startup warning to distinguish them from official release builds — expected, not an error. Verify with `fastforge --version`. If the shell cannot find the command, check that the install directory is in `PATH`. To upgrade, run `fastforge upgrade`: it downloads the latest release archive for the platform and replaces the running binary (use `sudo` if the install directory is not writable, e.g. `/usr/local/bin`). To pin a version instead, re-run the install script with `FASTFORGE_VERSION`. Every command first checks GitHub for a newer release (stderr hint, 5s timeout, never fails the command); pass the global `--no-version-check` flag to skip it, e.g. in CI. Set `GITHUB_TOKEN` to avoid API rate limits. Uninstall with the matching `uninstall.sh` / `uninstall.ps1`, passing the same `FASTFORGE_INSTALL_DIR` if one was used at install time. ## Toolchain prerequisites Fastforge shells out to platform tools. When a command fails, first check the dependency for that operation: | Operation | Requires | | --- | --- | | Android build | Android SDK, Gradle toolchain | | APK/AAB analysis | `aapt2` under `ANDROID_HOME`/`ANDROID_SDK_ROOT` (AAB alternatively bundletool via `BUNDLETOOL` or `PATH`) | | iOS / macOS build, DMG/.app analysis | macOS, Xcode command-line tools | | Flutter build | Flutter SDK with `flutter` in `PATH` | | App Store upload | macOS, `xcrun`, App Store Connect credentials | | Firebase publishing | Firebase CLI | | Vercel publishing | Vercel CLI | ## Project configuration Per-project state lives under `.fastforge/` in the project root: ```text .fastforge/ ├── config.yaml # store apps + auth for `fastforge store` and Studio ├── workflows/ # local workflow YAML files └── stores/ # catalog data pulled from stores ``` Read [references/config.md](references/config.md) before writing or editing `.fastforge/config.yaml`. Two rules matter everywhere: credentials are passed through process environment variables (never CLI args, never committed), and `auth` values may reference them as a whole-value `${ENV_NAME}`. ## Workflows `fastforge workflow` runs GitHub-Actions-style YAML, conventionally kept in `.fastforge/workflows/`. Workflows are the mechanism the other fastforge skills use for anything repeatable or multi-step — read [references/workflow.md](references/workflow.md) for the full syntax, the `fastforge/package` and `fastforge/publish` actions, and validation before generating or debugging any workflow file. Quick diagnostics for a failing workflow: 1. `fastforge workflow validate <file>` — parses structure only; it does not execute steps, so a valid file can still fail at run time. 2. `build-args` and `publish-args` must be **JSON object strings**, not YAML maps — this is the most common authoring mistake. 3. Discovery covers `.fastforge/workflows/`, `.minact/workflows/` **and** `.github/workflows/`; if more than one file is found, `workflow run` needs an explicit `--file`. Files that fail to parse are silently left out of `list`. ## Artifact analysis `fastforge analyze` reports identity, tech stack, size composition, and signing for `.apk`, `.aab`, `.ipa`, `.dmg`, and `.app` inputs, as JSON or a self-contained HTML report: ```bash fastforge analyze dist/app.apk # JSON to stdout fastforge analyze dist --output report.html # scan a directory, HTML report ``` DMG and `.app` analysis run only on macOS. Read [references/analyze.md](references/analyze.md) for per-format fields, dependencies, and CI usage before interpreting or scripting analysis output. ## Known limitations to state plainly - `fastforge release` exists only for legacy compatibility — steer users to workflows. - The `fastforge-package` skill has the authoritative platform/format matrix; `--platform` is optional on `package`/`build` (inferred from targets and project layout when unambiguous).
Voir sur GitHub