app-dev

This is a repo for building freshworks apps through AI agents

Installation
CLI
npx skills add https://github.com/freshworks-developers/marketplace --skill app-dev

Installieren Sie diesen Skill über die CLI und beginnen Sie mit der Verwendung des SKILL.md-Workflows in Ihrem Arbeitsbereich.

Zuletzt aktualisiert am 4/25/2026

Freshworks Developer Tools

App Development Kit for AI coding assistants (Claude Code, Cursor, etc.) that provide Freshworks Platform 3.0 guidance.

Platform 3.0 Cursor Skill Crayons FDK

Node.js FDK Plugins

Agentic App Development Kit for Freshworks app development.
Enforces Platform 3.0 patterns with zero tolerance for legacy code.

Platform 3.0 · Cursor Plugins · Crayons · Request Templates · OAuth · fdk validate

[!NOTE]
Feedback and bug reports: GitHub Issues. AI agents: start from AGENTS.md for routing, skills layout, and repo norms.

[!TIP]
Human install & routing: use this README (installation below), TROUBLESHOOTING.md for Cursor / Claude Code skill issues, and the Freshworks Developer Portal for product documentation and API keys.

Installation

npx skills

npx skills add https://github.com/freshworks-developers/marketplace --skill fw-setup
npx skills add https://github.com/freshworks-developers/marketplace --skill fw-app-dev
npx skills add https://github.com/freshworks-developers/marketplace --skill fw-ai-app-dev
npx skills add https://github.com/freshworks-developers/marketplace --skill fw-review
npx skills add https://github.com/freshworks-developers/marketplace --skill fw-publish

Available Skills

The table lists skills in lifecycle order. One-line summaries here; full playbooks in each folder’s README.md / SKILL.md. Slash commands, rules file inventory, and MCP wiring are in AGENTS.md.

Skill One-line summary
fw-setup FDK and Node.js install / lifecycle via nvm
fw-app-dev Full Platform 3.0 marketplace apps: manifest, requests, OAuth, serverless, UI
fw-ai-app-dev AI Actions (actions.json), SMI, request templates, validation
fw-review Structured pre-submission audit (rules + scripts)
fw-publish Marketplace publish via MCP (validate, pack, upload, submit/update)

From toolchain to marketplace (lifecycle)

Typical path from a cold machine to a listed or testable marketplace app. Skip steps your task does not need (for example, AI Actions–only work may never open fw-app-dev UI locations).

  1. Toolchain — fw-setup
    Install and stabilize FDK (10.x for publishing) and Node (24.x) with nvm, fix PATH and shell persistence, and recover from version drift. Without a working fdk, later steps (fdk validate, fdk pack, and some fw-review script assumptions) stall. Slash commands such as /fw-setup-install, /fw-setup-status, and /fw-setup-troubleshoot are defined in that skill’s commands/ (see AGENTS.md inventory).

  2. Application development — fw-app-dev
    Build or migrate the full Platform 3.0 app: manifest.json (modules), config/requests.json, OAuth, serverless handlers, frontend locations, Crayons, and fdk validate with guided fixes (/fdk-fix, /fdk-migrate, /fdk-refactor, /fdk-review for validate rounds). Does not install FDK—use fw-setup first when the toolchain is missing.

  3. AI Actions & APIs — fw-ai-app-dev
    When the surface is actions.json plus serverless SMI (not a full sidebar UI app), use this skill for request templates, schemas, test data, and integration guardrails. Complements fw-app-dev; combined UI + actions apps may need both.

  4. Pre-flight audit — fw-review
    Optional repeatable, policy-driven pass before heavy QA or submission: iparams and manifest rules, frontend FF-* checks, SC-* checks via scripts/*.js, and an App Review Result per skills/fw-review/rules/report.md. Not the same as fw-app-dev’s /fdk-review (which re-runs fdk validate). Ensure FDK on PATH when a phase needs it.

  5. Publish — fw-publish
    After validate and pack: configure freshworks-marketplace MCP using the repo root .mcp.json shape, then app upload and submit or update version. Requires a Developer Portal JWT. fw-app-dev / fw-ai-app-dev fix validation issues; fw-review reduces surprises before upload.

Typical thread: fw-setupfw-app-dev (and/or fw-ai-app-dev) → optional fw-reviewfw-publish.

Structure

Each skill follows the Agent Skills Specification:

skill-name/
├── SKILL.md           # Main skill file with frontmatter + instructions
├── commands/          # Slash commands (where the skill defines them)
├── rules/             # Editor or audit rules (.mdc and/or .md)
├── scripts/           # Optional deterministic checks
├── references/        # Additional documentation loaded on demand
└── assets/            # Templates, logos, etc.

Project-Level Installation

Skills are also available project-wide via .cursor/skills/:

.cursor/
├── README.md          # Configuration documentation
└── skills/
    └── <skill-name>/  # Symlink or copy from ../../skills/<skill-name>

This allows project contributors to use skills without global installation.

Rules, slash commands, and check scripts: full file inventory and marketplace paths are in AGENTS.md under Rules and slash commands (inventory)—update that section when you add or rename files.

Skill Discovery

Skills are automatically discovered via SKILL.md frontmatter:

---
name: "<skill-id>"
description: "Short description for discovery"
version: "1.0.0"
---

Other skills use the same frontmatter shape with their own name (see the Available Skills table). No manifest generation or registry required; each skill is self-contained and declarative.

MCP (marketplace publish)

Publishing uses the freshworks-marketplace server. This repo bundles .mcp.json at the repository root (URL + Authorization header). Claude Code vs Cursor token placement, copy-paste blocks, and tool names are documented in AGENTS.md (MCP section) and the publish skill’s own files under skills/fw-publish/—not duplicated here.

Troubleshooting

Having issues with skills installation or usage?

Common issues:

  • Skills not recognized → Check SKILL.md and plugin.json structure
  • Commands not working → Verify rulesDirectory and commandsDirectory in plugin.json
  • Rules not applying → Ensure rules are in skills/{skill}/rules/ (not .cursor/rules/)

Support

License

MIT