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

@adaptec/goat-saas

v1.0.1

Published

Setup tool for the goat-saas skill — installs the skill and connects to the MCP server

Downloads

194

Readme

@adaptec/goat-saas

Setup tool for the goat-saas skill — a software requirements engineer and architect for web/mobile SaaS applications, powered by Claude Code.

goat-saas transforms requirements conversations into a comprehensive 9-document package:

| # | Document | Description | |---|----------|-------------| | 1 | README | Project master index (generated last, presented first) | | 2 | Application Summary | Plain-English overview for non-technical stakeholders | | 3 | Feature Requirements | Detailed feature specs, workflows, and data entities | | 4 | rippl Requirements | Machine-readable user stories and test scenarios (.rpl) | | 5 | Prototype Specification | Screen inventory, mock data, click-flows, and client sign-off checklist | | 6 | Technical Architecture | Stack, patterns, API design, encryption, and environment setup | | 7 | Testing Framework | Multi-layer test strategy with phase-by-phase test mapping | | 8 | Security & Compliance | RBAC, encryption, OWASP Top 10, and full regulatory compliance table | | 9 | AI Dev Instructions | Platform-specific build guidance with example AI prompts per phase |

After all 9 documents are approved, a QA Review checks cross-document consistency and reports gaps before the package is declared complete. Optional Word (.docx) export is available for every document.


Prerequisites

Before running setup, make sure you have:

  • Claude Code installed and authenticated — either the CLI or the VS Code extension
  • Node.js 18+ — check with node --version
  • A valid API key — provided by your instructor (educational use) or included with your subscription

Quick Start

npx @adaptec/goat-saas setup

You'll be prompted for your API key. The tool will verify it, install the skill, and configure the MCP server connection. After it completes:

  1. Restart Claude Code (close and reopen VS Code, or restart the CLI)
  2. Start a new conversation
  3. Type /goat-saas

That's it — the skill takes over from there.


Commands

npx @adaptec/goat-saas setup

First-time installation. Installs the skill and connects to the MCP server.

What happens:

goat-saas Setup

Enter your API key: gs_your_key_here
  Verifying connection to server...
  [OK] API key verified
  Fetching skill prompt from server...
  [OK] Skill installed to ~/.claude/skills/goat-saas/SKILL.md
  Configuring MCP server in Claude Code settings...
  [OK] MCP server configured in ~/.claude/settings.json

Setup complete! Restart Claude Code, then use /goat-saas to start.

Step by step:

  1. Prompts for your API key
  2. Connects to the goat-saas server and validates your key (checks expiry, permissions, and rate limit)
  3. Downloads the latest skill prompt from the server and saves it to ~/.claude/skills/goat-saas/SKILL.md
  4. Adds the goat-saas MCP server entry to ~/.claude/settings.json, preserving all your existing settings and MCP servers

npx @adaptec/goat-saas update

Update the skill to the latest version from the server.

npx @adaptec/goat-saas update

What happens:

  • Reads your existing API key from ~/.claude/settings.json (no need to re-enter it)
  • Downloads the latest skill prompt from the server
  • Overwrites the local ~/.claude/skills/goat-saas/SKILL.md with the updated version

Run this when you're notified of a skill update. Restart Claude Code after updating.

npx @adaptec/goat-saas uninstall

Remove the skill and MCP server configuration.

npx @adaptec/goat-saas uninstall

What happens:

  • Deletes ~/.claude/skills/goat-saas/SKILL.md
  • Removes the goat-saas entry from mcpServers in ~/.claude/settings.json
  • Does not touch any other Claude Code settings, skills, or MCP servers

No arguments / npx @adaptec/goat-saas

Prints usage help:

goat-saas — SaaS Requirements Skill for Claude Code

Usage:
  npx @adaptec/goat-saas setup       Install skill and connect to MCP server
  npx @adaptec/goat-saas update      Update skill to latest version from server
  npx @adaptec/goat-saas uninstall   Remove skill and MCP server config

How It Works

goat-saas uses a hybrid architecture that combines a local skill prompt with a remote MCP server:

┌──────────────────────────────┐         ┌────────────────────────────────┐
│  Your Machine (Claude Code)  │  HTTPS  │  goat-saas MCP Server          │
│                              │────────>│  (goat-saas-mcp-server.replit.app)
│  Local:                      │         │                                │
│  ~/.claude/skills/goat-saas/ │         │  Serves on demand:             │
│    SKILL.md                  │<────────│  - Document templates          │
│    (conversation workflow)   │         │  - rippl v2 syntax spec        │
│                              │         │  - Scenario patterns           │
│  Claude reads the skill,     │         │  - Architecture patterns       │
│  calls MCP tools as needed   │         │                                │
└──────────────────────────────┘         └────────────────────────────────┘
  • SKILL.md (local) contains the full conversational workflow — the question framework, document generation order, approval flow, QA review, and all rules. This is what makes the skill interactive and sequential.

  • MCP server (remote) serves the proprietary document templates, the rippl v2 language spec, scenario patterns, and architecture patterns. When Claude needs a template to generate a document, it calls the server and receives the content. The templates are never stored as files on your machine.

Why this matters: You get the full interactive experience of the skill — the same conversational flow, the same document quality, the same QA review — without proprietary content being stored locally.


Using the Skill

After setup, start a new Claude Code conversation and type:

/goat-saas

What the skill does

Phase 1 — Platform & Requirements Gathering:

  • Asks which AI development platform you'll use (Replit or Claude Code)
  • Walks you through structured questions covering 8 areas: What, Who, Why, Workflows, When, Data, Tech, and Auth
  • If you say "ASSUME" or "generate now," it makes logical assumptions and labels them clearly

Phase 2 — Sequential Document Generation:

  • Generates 9 documents one at a time, in this order:
Document 2: Application Summary
   ↓ [You approve]
Document 3: Feature Requirements
   ↓ [You approve]
Document 4: rippl Requirements (.rpl)
   ↓ [You approve]
Document 5: Prototype Specification
   ↓ [You approve]
Document 6: Technical Architecture
   ↓ [You approve]
Document 7: Testing Framework
   ↓ [You approve]
Document 8: Security & Compliance
   ↓ [You approve]
Document 9: AI Development Instructions
   ↓ [You approve]
Document 1: README (generated last, presented first)
   ↓ [You approve]
QA Review: Cross-document consistency check
   ↓ [Findings presented, fixes applied]
   ↓ [Complete — 9-document package delivered]
  • After each document, you can request changes before approving
  • Optional Word (.docx) export is offered after each approval

Key features

  • rippl v2 requirements files — machine-readable .rpl files with user stories, test scenarios, and data models
  • Prototype specification — screen-by-screen blueprint with mock data, click-flows, and a client sign-off checklist
  • Per-phase testing — testing is continuous (written after every development phase), not deferred to the end
  • Security & compliance — every standard (HIPAA, GDPR, CCPA, SOC 2, PCI-DSS, FERPA, ADA/WCAG) explicitly addressed or marked N/A
  • Terms of Service & Privacy — ToS/Privacy pages and signup acceptance are standard in every generated app
  • Mobile support — Expo wrapper (default for web+mobile), Capacitor (alternative), or Expo + React Native (mobile-only)
  • QA Review — automated cross-document consistency and gap analysis before final delivery

Environment Variables

| Variable | Default | Description | |----------|---------|-------------| | GOAT_SAAS_SERVER_URL | https://goat-saas-mcp-server.replit.app | Override the MCP server URL. Use this for development, testing, or connecting to a custom deployment. |

Example:

GOAT_SAAS_SERVER_URL=http://localhost:3001 npx @adaptec/goat-saas setup

API Key

Your API key is:

| Property | Detail | |----------|--------| | Format | gs_<name>_<random> (e.g., gs_john_doe_a8f3c9e2d1b4) | | Scope | Personal — tied to your identity | | Expiry | Time-limited — expires at the end of your course or subscription period | | Rate limit | Requests per hour (set by your administrator) | | Storage | Stored locally in ~/.claude/settings.json under mcpServers.goat-saas.headers.Authorization | | Transmission | Sent only to goat-saas-mcp-server.replit.app over HTTPS |

If your key expires or stops working:

  1. Check with your instructor or subscription provider for a replacement key
  2. Run npx @adaptec/goat-saas setup with the new key (it will overwrite the old configuration)

Files Modified

The setup tool creates or modifies exactly two files:

| File | What happens | |------|-------------| | ~/.claude/skills/goat-saas/SKILL.md | Created on setup. Overwritten on update. Deleted on uninstall. Contains the skill conversation workflow (no proprietary templates). | | ~/.claude/settings.json | Modified — a goat-saas entry is added under mcpServers. All existing settings, permissions, and other MCP servers are preserved. On uninstall, only the goat-saas entry is removed. |

No other files are created, modified, or deleted. The setup tool does not install global packages, modify your shell profile, or create background processes.


Platform Compatibility

| Platform | Supported | Notes | |----------|-----------|-------| | macOS | Yes | ~/.claude/ is in your home directory | | Linux | Yes | ~/.claude/ is in your home directory | | Windows | Yes | ~/.claude/ resolves to C:\Users\<you>\.claude\ | | WSL | Yes | Automatically detected — ~/.claude is symlinked to the Windows home directory so skills and settings are shared between WSL and Windows | | Claude Code CLI | Yes | Full support | | Claude Code VS Code extension | Yes | Full support — restart VS Code after setup |


Troubleshooting

"Could not verify API key"

  • Double-check your API key for typos, extra spaces, or line breaks
  • Your key may have expired — contact your instructor or subscription provider
  • The server may be temporarily unavailable — wait a minute and retry

Skill not found (/goat-saas doesn't trigger)

  • Restart Claude Code — close and reopen VS Code, or restart the CLI
  • Verify the skill file exists:
    cat ~/.claude/skills/goat-saas/SKILL.md | head -5
    You should see the --- frontmatter and name: goat-saas
  • If the file is missing, run npx @adaptec/goat-saas setup again

"Connection failed" during setup

  • Check your internet connection
  • Verify the server is reachable:
    curl https://goat-saas-mcp-server.replit.app/health
    You should see {"status":"ok","server":"goat-saas-mcp","version":"1.0.0"}
  • The server may be cold-starting (Replit autoscale) — wait 30 seconds and retry

Templates not loading during document generation

  • The MCP server connection may have dropped. Check it in Claude Code:
    /mcp
    Look for goat-saas in the server list and verify its status
  • Re-run setup to reconfigure:
    npx @adaptec/goat-saas setup
  • Verify ~/.claude/settings.json contains the MCP server entry:
    {
      "mcpServers": {
        "goat-saas": {
          "type": "http",
          "url": "https://goat-saas-mcp-server.replit.app/mcp",
          "headers": {
            "Authorization": "Bearer gs_your_key_here"
          }
        }
      }
    }

Update command says "No goat-saas MCP server configured"

  • The update command reads your API key from ~/.claude/settings.json. If the config is missing, run setup first:
    npx @adaptec/goat-saas setup

Claude generates documents but they're missing structure or feel generic

  • The MCP server may not be responding. Check connection:
    curl -H "Authorization: Bearer gs_your_key_here" \
      https://goat-saas-mcp-server.replit.app/skill-prompt | head -5
  • If that returns an error, your key may be expired or rate-limited
  • Try generating again — Claude will retry MCP tool calls

WSL: skill not visible on Windows side

If you ran setup from WSL but Claude Code on Windows does not see the skill:

  • The setup tool auto-detects WSL and creates a symlink from ~/.claude to /mnt/c/Users/<you>/.claude. Check if the symlink exists:
    ls -la ~/.claude
    You should see something like ~/.claude -> /mnt/c/Users/YourName/.claude
  • If it is a regular directory instead of a symlink, back it up and re-run setup:
    mv ~/.claude ~/.claude.bak
    npx @adaptec/goat-saas setup
  • If auto-detection failed, create the symlink manually (see DISTRIBUTION.md for steps)

Windows-specific: path errors

  • The setup tool uses os.homedir() which resolves correctly on Windows
  • If you see path errors, verify Claude Code is installed and %USERPROFILE%\.claude\ exists

Frequently Asked Questions

Can I use the skill without the MCP server? No. The skill prompt (SKILL.md) contains the conversation workflow but not the document templates. The templates are served by the MCP server on demand. Without the server, Claude won't have the structure to generate documents correctly.

Can I use the skill on multiple machines? Yes. Run npx @adaptec/goat-saas setup on each machine with the same API key. The key is not locked to a single device.

Does the skill work offline? No. The MCP server must be reachable over the internet for template retrieval during document generation.

What happens when my API key expires? The skill will stop loading templates. You'll see errors during document generation. Get a new key from your instructor or subscription provider, then run setup again with the new key.

Can I see what data is sent to the server? The only data sent to the server is your API key (in the Authorization header) and the MCP tool call name (e.g., get_document_template('app-summary')). Your project details, conversations, and generated documents are never sent to the goat-saas server — those stay between you and Claude.

How do I check which version of the skill I have?

head -5 ~/.claude/skills/goat-saas/SKILL.md

The frontmatter will show the skill name and description. To get the latest version:

npx @adaptec/goat-saas update

License

See LICENSE.md for full terms. Summary:

  • The goat-saas skill, document templates, and rippl v2 language are proprietary to Keno Mullings / Adaptec
  • Documents you generate are yours — you own all deliverables and can use them without restriction
  • The rippl copyright header (rippl v2.0 (c) 2025 Keno Mullings) must be retained in all .rpl files
  • API keys are personal, non-transferable, and time-limited
  • Content served by the MCP server is licensed for real-time use only — do not extract, cache, or redistribute

Support

For setup issues, API key problems, subscription management, or skill questions:

Keno Mullings / Adaptec [email protected]