npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@scino/fstack

v1.1.0

Published

fstack, Founder's Stack (and Fabio's Stack), by Fabio Parlascino. Founder operations plus engineer-mode rigor. Works in Cursor, Claude Code, Codex, Antigravity, OpenCode, Hermes, OpenClaw, and any agent that loads Agent Skills.

Readme

fstack, Founder's Stack (and Fabio's Stack)

fstack is an AI agent stack for founders who still write the product. It is built by Fabio Parlascino. The F is both Fabio and founder. It is not tied to one editor or one lab. The same / skills run in Cursor, Claude Code, Google Antigravity, OpenAI Codex, OpenCode, Hermes, OpenClaw, and anything else that loads Agent Skills.

A founder's job is to talk to users, build product, and iterate. Most agent stacks pick one of those and pretend the rest is "context." fstack keeps both in the same tree: the messy operating system of a company, and the engineering discipline that stops you shipping slop.

"Talk to users. Build the thing. Don't ship slop. Be a decent human." Fabio Parlascino

"Throughput without quality is not a goal. If you want to go fast, go deep first." Lauren Tan (poteto)

It works wherever you already work. Install once, use the same / skills.

npm: @scino/fstack · GitHub: Scino/fstack


Why the name

There is a small family of named stacks in this corner of the internet.

gstack is Garry Tan's Claude Code setup. A virtual team of specialists. Office hours, CEO review, QA in a real browser, ship.

pstack is Lauren Tan's (poteto) engineering stack. Playbooks, principles, parallel agents, verify on the real artifact. I learned a lot from it.

fstack is mine. Same engineering bar, founder work as the default mode. The engineering engine is /engineer-mode. /poteto-mode remains as an alias so existing prompts keep working. The playbooks and principles started as her work, and they are credited. The founder loop, the support-to-fix bridge, the social and sales skills, the browsing engine, and the dual-engine router did not.

If you want Garry's specialist roster, use gstack. If you want poteto's engineering plugin as she ships it, use pstack. If you want one stack that can answer an inbound lead and then go fix the bug the customer just hit, this is the one.


What it actually does

Two engines. One orchestrator (/fstack) that classifies the request instead of dumping every skill into the prompt.

Founder operations. The work that happens between commits. Inbound leads that need an honest reply, not a demo-script. Support tickets that are sometimes bugs and sometimes the product being confusing. Posts that should sound like you, not like a growth agency. Competitive teardowns that do not get you banned by Cloudflare on paragraph two.

Engineering. /engineer-mode is the default for anything non-trivial in code. It routes to 23 engineering playbooks and 24 design principles. Reproduce first. Name the data shape before the abstraction. Architect across a function boundary. Verify on the real artifact. Delete the narrating comments. The principles are model-only leaves (user-invocable: false). Some IDE slash pickers still list them. That is the picker, not a catalog mistake.

75 skills total. 51 are user-facing.

The bridge skill is /support-loop. A customer paid and the workspace is still locked. The agent finds the webhook, writes a failing test, fixes the handler, checks what else that path touches, and drafts the reply you can actually send. Most stacks stop at "sounds like a billing bug."


Quick start

npx @scino/fstack install --all
npx @scino/fstack doctor

Or clone the repo and run the same CLI:

git clone https://github.com/Scino/fstack.git
cd fstack
node bin/fstack.js install --all

Windows: ./setup.ps1. macOS/Linux: ./setup.sh.

npx @scino/fstack install --all detects which agents you have and links the skills into each one. fstack doctor prints what it found.

Cursor, Claude Code, Codex, Antigravity, OpenCode, and project-local .agents/skills are first-class. Cursor also gets a plugin install (logo and author) instead of a pile of anonymous skill folders. The others use their normal skills directory. Details are in the table below.

For a different project, not this repo:

npx @scino/fstack init

That writes .agents/skills for Hermes, OpenClaw, and anyone else who discovers skills from the repo. Do not commit it. Skip init inside the fstack repo itself. You already have skills/ here, and a second copy makes every command show up twice.


Update

There is no separate updater. Re-run install. It relinks the current skill tree.

From npm:

npx @scino/fstack@latest install --all

update is an alias for install:

npx @scino/fstack@latest update --all

If you cloned this repo, Cursor already follows the clone (the plugin is a junction). Still re-run install so Claude, Codex, and the rest pick up new skills:

git pull
node bin/fstack.js install --all

Then reload the editor. fstack doctor prints the package version and what it found.


A morning with fstack

Paste last night's inbox into /inbox-triage. You get P0 deal-blockers, P1 hot leads, P2 questions, P3 noise, and drafts instead of a guilt pile.

An inbound from [email protected] asks about SSO you do not have. /lead-reply is supposed to be consultative and true. If the product cannot do it, the draft says so and offers a real next step. /unslop-email exists because the first pass will still try to "circle back" and "leverage."

A customer paid and the workspace is still locked. /support-loop is the whole loop, not a sympathy paragraph. If it is a bug, /engineer-mode owns the fix. If it is expected behavior, you still owe them a human explanation.

You shipped three PRs and need something public. /changelog-to-post turns the commit list into a customer changelog, a short email, and a post you would actually publish. /social-post knows X wants a punch and LinkedIn wants a story. It should read your /founder-voice profile rather than inventing a personal brand.

When it is time to build, you do not narrate a plan for forty lines. /engineer-mode on a real feature opens a todolist, starts with principles, picks the Feature playbook, and refuses to write logic until the data shape is named.

That is the product. Skills are the verbs.


Dual-engine routing (/fstack)

graph TD
    User([Founder / Operator]) --> FStack["/fstack"]
    FStack -->|"Sales and leads"| Sales["/lead-reply /unslop-email /inbox-triage"]
    FStack -->|"Support"| Support["/support-loop"]
    FStack -->|"Brand"| Social["/social-post /social-reply"]
    FStack -->|"Launch"| Marketing["/changelog-to-post /geo-page"]
    FStack -->|"Strategy"| Strategy["/office-hours /ceo-review /teardown"]
    FStack -->|"Engineering"| Eng["/engineer-mode"]

Say /fstack when you do not want to pick. Say the specific skill when you already know.


Anti-bot browsing (/browse)

Naive scrapers die on LinkedIn, X, and Cloudflare. /browse drives a real browser.

  1. Attach to your Chrome over CDP (--remote-debugging-port=9222) when you need cookies, clicks, or a search UI. Empty landing pages are often search shells, not a login wall.
  2. One-shot headless Chrome for public pages whose URL already has the content (fstack browse text https://example.com). Masks navigator.webdriver and restores window.chrome.runtime. Empty body text fails instead of printing nothing.
  3. Whatever browser the host agent already has, when that is enough.

Extracted text is sanitized before it hits the model. Zero-width characters and "ignore previous instructions" payloads get stripped. /teardown uses this so a pricing page cannot jailbreak the agent on the way through.

npx @scino/fstack browse text https://example.com
npx @scino/fstack browse check-cdp

Skill catalog

Flagship

These are the modes you type on purpose.

| Skill | When to use it | |---|---| | /fstack | You have a request and want the stack to classify it. | | /founder-mode | Own the whole loop: product, code, copy, customer, speed. | | /engineer-mode | Non-trivial engineering. 23 engineering playbooks, 24 design principles. | | /poteto-mode | Same as /engineer-mode. Compatibility alias. | | /setup-fstack | Point roles at the models you actually have. | | /stfu | Quiet execution. No filler, no diff recitation. | | /sudo | Authorized work where paternalistic refusals waste the session. |

Founder operations

The company-running verbs. Sales, support, brand, strategy, research.

| Skill | When to use it | |---|---| | /lead-reply | Turn a raw inbound into a consultative reply that matches what you actually ship. | | /unslop-email | Strip corporate buzzwords. Keep the warmth. | | /inbox-triage | Rank a pile of threads by commercial urgency and draft answers. | | /support-loop | Ticket, then codebase, then fix, then the reply you can send. | | /founder-voice | Persistent voice profile so posts and emails stay yours. | | /social-post | X short and sharp. LinkedIn as a story with a takeaway. | | /social-reply | High-leverage replies to posts already moving. | | /changelog-to-post | Git history into a customer changelog and a launch note. | | /geo-page | Documentation written so AI search can cite it without hallucinating. | | /customer-lens | Walk a flow as a skeptical first-time user. | | /office-hours | Six YC forcing questions on demand reality and the narrowest wedge. | | /ceo-review | Scope up, cherry-pick delight, hold, or cut to Friday. | | /retro | Weekly audit of velocity versus customer reality. | | /browse | Anti-bot browsing and extraction. | | /teardown | Competitor pricing, packaging, complaints, wedge. |

Engineering

The build verbs. Most of these are what /engineer-mode already routes to. You can still call them directly.

| Skill | When to use it | |---|---| | /architect | Design function boundaries before writing logic. | | /arena | N models try the same problem. You keep the best parts. | | /swarm | Fan-out workers across slices or races. | | /interrogate | Adversarial multi-model review for races and edge cases. | | /tdd | Failing reproduction first, then the fix. | | /deslop | Strip wrappers, boilerplate, and narrating comments in code. | | /unslop | Same idea for prose. | | /no-comments | Delete comments the code already says. | | /technical-writing | RFCs, READMEs, PR bodies, commit messages. | | /how | Walk through how a subsystem actually works. | | /why | Forensic "why is it like this" across git, tickets, and incidents. | | /blast-radius | Prove what else a change can break. | | /fix-ci | Red pipelines and flakes. | | /fix-merge-conflicts | Conflicts without losing the logical change. | | /make-pr-easy-to-review | Shape the diff for a human reviewer. | | /show-me-your-work | Decision trail on long or unsupervised runs. | | /typescript-best-practices | Illegal states unrepresentable, parse at the boundary. | | /figure-it-out | No bundled playbook fits. Design one, then run it. | | /babysit | Watch a PR to green. Skeptical of review bots. | | /create-verification-skill | Generate a project-local verify skill that drives the real app. | | /maintain-verification-skill | Keep that verify skill true as the app changes. | | /get-pr-comments | Pull review comments into the working set. | | /thermo-nuclear-code-quality-review | Unkind review. Use when you asked for it. |

Other

Small tools that do not belong in either engine's headline, and still earn their folder.

| Skill | When to use it | |---|---| | /bro | Restate the last message like a human talking to a human. | | /recall | Catch up on recent work from chats and the shared record. | | /reflect | Post-task judgment. What actually happened. | | /teach | Compose /how and /why into an explanation someone can follow. | | /automate-me | Turn a repeated habit into a durable skill. | | /what-did-i-get-done | What shipped, in language you could send to a team. |

22 principle-* skills sit beside these. /engineer-mode reads them. You should not have to.


Supported harnesses

| Harness | Where it lands | |---|---| | Cursor | Plugin at ~/.cursor/plugins/local/fstack | | Claude Code | ~/.claude/skills | | Antigravity | ~/.gemini/antigravity/skills | | OpenAI Codex | ~/.codex/skills via CLI, or codex plugin marketplace add Scino/fstack for the full plugin | | OpenCode | ~/.config/opencode/skills | | Hermes / OpenClaw | .agents/skills via fstack init in the target project |

The same skill tree is what every agent loads. This GitHub repo also carries plugin manifests for Cursor and Codex so those two can install fstack as a plugin, not only as loose files. "Created by Cursor" in a slash picker is Cursor's own marketplace badge. We set logo and author so a plugin install is not anonymous. That does not make fstack a Cursor product.


Attribution and license

Engineering playbooks, principles, and a few review/CI skills started as Lauren Tan's pstack and Cursor team-kit work. They are MIT. The notices travel in skills/engineer-mode/references/licenses/NOTICE.md. fstack ships that engineering engine as /engineer-mode, with /poteto-mode as an alias, and keeps the credit.

Founder-operations skills, the dual-engine router, the installer, the stealth browser, and the packaging are original to fstack.

MIT. Copyright (c) 2026 Fabio Parlascino. See LICENSE.