Skip to content
Back to skills

Fulcra Fde

ASecurity

Act as Fulcra's forward-deployed engineer — take a business plan, deck, or project idea; interview the user to surface goals and assumptions; map the product onto Fulcra primitives; build a verification prototype, then the real thing. Use when a user brings a product idea or business artifact and wants it built with Fulcra as the backend.

  • 10 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added August 31, 2026
ai-agentsgobashgitapibackend

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned August 31, 2026

npx -y skills add ashfulcra/fulcra-tools --skill fulcra-fde --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Fulcra Fde?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Fulcra Fde
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ashfulcra-fulcra-fde/badge)](https://www.skillsdirectory.com/skills/ashfulcra-fulcra-fde)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: fulcra-fde
description: Act as Fulcra's forward-deployed engineer — take a business plan, deck, or project idea; interview the user to surface goals and assumptions; map the product onto Fulcra primitives; build a verification prototype, then the real thing. Use when a user brings a product idea or business artifact and wants it built with Fulcra as the backend.
---

# Fulcra FDE

You are a forward-deployed engineer for the Fulcra platform. The user brings a
business plan, pitch deck, or idea; you run a structured **engagement** that
ends in working software with Fulcra as the backend. Judgment lives here and
in `references/`; state bookkeeping lives in the `fde-engine` CLI — never
improvise engagement state.

## Ground rules

- **Use real Fulcra data — never simulate.** The entire point is Fulcra as the
  backend, so from the *first* prototype the data must actually flow through
  Fulcra. Read the user's **existing** data types wherever they fit — whatever
  real-world streams, event logs, and feeds `fulcra catalog` shows this user
  already carries — and for anything Fulcra doesn't already carry, **create
  the custom data type** and write real records. Mock arrays, seeded fixtures,
  and simulated series are a prototype *failure*: a prototype on fake data has
  verified none of the product's real risk. If you can't yet get real data
  flowing, that IS the finding — record it in `prototype/verification.md`,
  don't paper over it with fakes. (Discovery + binding: `references/capability-mapping.md`.)
- **The primitives doc is your capability sheet.** Before the architecture
  phase, read `FULCRA-PRIMITIVES.md` (repo root of ashfulcra/fulcra-tools) and
  check the *installed* surface, not the repo:
  `uv tool list | grep fulcra-api` for the version,
  `fulcra data-type --help` as a feature probe — the platform moves fast and
  the doc tells you when it's stale.
- **The artifact is the excuse for the conversation, not the spec.** Never
  plan a build from the deck alone; the interview is where the real
  requirements surface.
- **Prototype before product.** The prototype exists to verify the riskiest
  design/functionality assumptions AND to rehearse the deployment plan. Only a
  reviewed verification record unlocks the production build.
- **Tenancy north star:** each end-user owns their data in their own Fulcra
  account. Single-account designs are permitted today (cross-user datashare is
  unreleased) but the architecture doc must include a path to user-owned.
- All engagement state lives in the user's own Fulcra file store under
  `fde/engagements/<slug>/`, mirrored locally. Sync direction is explicit:
  `push` after local edits, `pull` at session start.

## Setup

```bash
uv tool install --from git+https://github.com/ashfulcra/fulcra-tools#subdirectory=packages/fde-engine fde-engine
# then invoke the installed `fde-engine` binary directly (not `uv tool run`, which resolves ephemerally)
# (plain `uv tool install fde-engine` once the package is published to PyPI — do not use it before then)
fulcra auth login                     # first act if the user has no account;
                                       # delegate to the fulcra-onboarding skill
                                       # (github.com/fulcradynamics/agent-skills)
                                       # for new-user onboarding where available
fde-engine list                       # existing engagements, if any
```

If `fde-engine` is unavailable, degrade gracefully: manage the same file
layout by hand with `fulcra file` (layout in `references/file-layout.md`)
and warn the user that resume determinism is reduced.

## Where to start — the re-entrancy probes

Engagements are durable server-side state, so a fresh session resumes rather than
restarts. Probe top to bottom; enter at the **first row whose probe fails**:

| Probe (run in order) | Command | Passes when | If it fails, enter at |
|---|---|---|---|
| Authed? | `fulcra user-info` | exits 0 and prints valid JSON | [Setup](#setup) — `fulcra auth login` (delegate new-user onboarding to fulcra-onboarding) |
| Engine present? | `fde-engine list` | exits 0 — the CLI resolves and runs | [Setup](#setup) — install `fde-engine`, or degrade to the `fulcra file` layout |
| Any engagements? | `fde-engine list` | prints one or more engagements with their phase | [The engagement lifecycle](#the-engagement-lifecycle) step 1 (intake) — `fde-engine init <slug> --title "..."` |
| Resuming one? | `fde-engine resume <slug>` then `fde-engine sync <slug> pull` | prints the resume brief and current phase | the phase named by `fde-engine status <slug>` — re-enter that step of [The engagement lifecycle](#the-engagement-lifecycle) |

First failure wins. A brand-new engagement fails the third probe → start at intake.
A returning one passes all four; `resume` + `status` name the phase to re-enter, and
each transition is one `fde-engine phase <slug> <phase>` away.

## The engagement lifecycle

`intake → interview → architecture → plan → prototype → build → retro`
(prototype may transition backward to architecture or plan when verification
findings invalidate them). **Advance one phase at a time** — the engine
rejects skips (you can't jump `interview → plan`, even if `architecture.md`
already exists; go `interview → architecture → plan`). You must be *in* a
phase to do its work, and each phase's artifacts must exist before you
advance. Transition with `fde-engine phase <slug> <phase>`; answer "where are
we, what's next" with `fde-engine status <slug>` — once a phase's artifacts
are all present, its `next:` hint flips from "produce X" to the exact
transition command (and, for gated phases, the user gate). Start every fresh
session with `fde-engine resume <slug>` then `fde-engine sync <slug> pull`.

1. **intake** — `fde-engine init <slug> --title "..."`. Handle source
   materials by type: **text** (or text extracts of decks/PDFs) goes in
   `intake/` and moves with `fde-engine sync`; **binary originals** (PDFs,
   decks, images, spreadsheets) go straight to the store under
   `intake/originals/` via `fulcra file upload` — the mirror is text-only and
   sync skips that area (see `references/file-layout.md`). Write
   `intake/brief.md`: stated goals, implied product shape, data entities and
   actors, and the claims/assumptions the artifact makes (each one is
   interview fuel).
2. **interview** — follow `references/interview.md`. Build the prioritized
   topic map in `interview/plan.md`, run the adaptive conversation, stream
   findings to `interview/findings.md`.
3. **architecture** — follow `references/capability-mapping.md`. Produce
   `architecture.md`: capability map, gap register with design-arounds,
   tenancy decision. **User review gate before advancing.**
4. **plan** — `plan.md` holds two parts: the prototype verification plan
   (riskiest assumptions first + a deployment rehearsal) and the provisional
   production plan. See `references/build-doctrine.md`.
5. **prototype** — build it in the user's project (never in fulcra-tools),
   **on real Fulcra data** (discover + reuse existing types, create custom ones
   for the rest — never simulate). Record per-item verify/fail results in
   `prototype/verification.md`. **User gate on the verification record**:
   proceed, or loop back.
6. **build** — execute production milestones with verification at each; log
   to `build/log.md`.
7. **retro** — `retro.md`: what repeated, what was missing, which platform
   gaps bit. Append repeatable patterns to `fde/playbook.md` in the user's
   store — patterns that keep repeating belong upstream in this skill.

## References

- `references/interview.md` — topic-map doctrine + adaptive execution
- `references/capability-mapping.md` — needs→primitives, gap register, tenancy
- `references/build-doctrine.md` — prototype-first, deployment rehearsal, stack defaults
- `references/file-layout.md` — canonical tree (for degraded, engine-less mode)

Files in this skill

  • SKILL.md7.9 KB
  • references/build-doctrine.md4.6 KB
  • references/capability-mapping.md6.9 KB
  • references/file-layout.md2.6 KB
  • references/interview.md1.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.