Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ Each plugin lives in `plugins/<slug>`. The directory name is the install keyword
| `linear` | Linear SDK scripting skill for issue, project, team, cycle, and comment workflows. |
| `mac-notify` | macOS notifications when a Cline run completes. |
| `nanobanana` | Image generation through OpenRouter and Gemini image models. |
| `pigment` | Pigment planning, formula, modeling, board, view, import, and performance skills with optional Pigment MCP registration. |
| `speak` | Speaks completed Cline replies with ElevenLabs text to speech. |
| `typescript-lsp` | TypeScript language service `goto_definition` support. |
| `weather-metrics` | Demo weather tool plus runtime metrics hooks. |
Expand All @@ -53,4 +54,6 @@ npm run validate

## License

[Apache 2.0 © 2026 Cline Bot Inc.](./LICENSE)
Most plugins in this repository are distributed under [Apache 2.0 © 2026 Cline Bot Inc.](./LICENSE).

Some bundled third-party skill content has additional license terms. Check each plugin directory for plugin-specific license files, such as `plugins/pigment/LICENSE.pigment-skills`.
56 changes: 56 additions & 0 deletions plugins/pigment/LICENSE.pigment-skills
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
Pigment Skills License v1

1. Definitions

“Pigment” means Pigment SAS and its affiliates.
“Skills” means the text files, prompts, instructions, examples, and any accompanying materials provided by Pigment that are intended for use in connection with the Services.
“You” means the individual or entity using the Skills.
“Services” means Pigment’s products, APIs, MCP servers, and related services.

2. License Grant

Subject to this License, Pigment grants You a limited, non-exclusive, non-transferable, revocable license to use, copy, modify, and distribute the Skills (including modified versions) in connection with the Services.

3. Restrictions

You will not, and will not permit others to:
Use the Skills to develop, train, improve, or benchmark a model or dataset intended to compete with the Services.
Use the Skills to build or enhance a competing product or service that provides substantially similar functionality to the Services.
Remove or alter copyright, trademark, or attribution notices in the Skills.
Represent modified Skills as official or endorsed by Pigment.
Distribute the Skills (including modified versions) without retaining all applicable copyright, trademark, and attribution notices included in the original Skills.
Distribute the Skills (including modified versions) without including a copy of this License.
Distribute modified versions of the Skills without clearly indicating that changes were made and that such modifications are not endorsed by Pigment.

4. Ownership

The Skills are licensed, not sold. Pigment retains all rights, title, and interest in and to the Skills, including all intellectual property rights.

5. Feedback

If You provide suggestions, ideas, or feedback about the Skills or Services (“Feedback”), You grant Pigment a perpetual, irrevocable, worldwide, royalty-free right to use and incorporate Feedback into its products and services without any obligation.

6. No Warranty

THE SKILLS ARE PROVIDED “AS IS” AND “AS AVAILABLE.” PIGMENT DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
You are responsible for evaluating outputs produced using the Skills, including for accuracy, safety, and compliance.

7. Limitation of Liability

TO THE MAXIMUM EXTENT PERMITTED BY LAW, PIGMENT WILL NOT BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, EXEMPLARY, OR PUNITIVE DAMAGES, OR ANY LOSS OF PROFITS, REVENUE, DATA, OR GOODWILL, ARISING OUT OF OR RELATED TO THE SKILLS OR THIS LICENSE. IN ALL CASES, PIGMENT’S TOTAL LIABILITY UNDER THIS LICENSE WILL NOT EXCEED USD $100 (OR THE EQUIVALENT IN LOCAL CURRENCY).

8. Termination

This License is effective until terminated. It will terminate automatically when you stop using the Services or if You breach this License. Upon termination, You must stop using the Skills and delete all copies in Your possession or control, including modified versions.

9. Compliance with Law

You will use the Skills in compliance with applicable laws and regulations, including those related to data protection and export controls.

10. Trademark / No Endorsement

This License does not grant You any rights to use Pigment’s trademarks or branding. You may not imply endorsement by Pigment.

11. Governing Law

This License and any dispute or claim (including non-contractual disputes or claims) arising out of or in connection with it or its subject matter or formation shall be governed by and construed in accordance with the laws of England and Wales. The parties irrevocably agree that the courts of England and Wales shall have exclusive jurisdiction to settle any such dispute or claim.
67 changes: 67 additions & 0 deletions plugins/pigment/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# pigment

Pigment planning and modeling guidance for Cline, with optional Pigment MCP registration.

## What It Does

Installs Pigment skills for analyzing workspace data, modeling applications, writing Pigment formulas, building boards and views, integrating external data, planning cycles, securing access rights, optimizing performance, and applying FP&A or workforce planning patterns.

The plugin can also register the Pigment MCP server when the user provides their workspace MCP URL. Pigment MCP gives Cline live access to the user's Pigment workspace through Pigment's OAuth flow. Default Pigment MCP tools are read-oriented for analysis. Pigment Advanced MCP tools can create or edit modeling objects when the user enables advanced tools in Pigment.

## Install

```bash
cline plugin install pigment
```

For local development from this repository:

```bash
cline plugin install ./plugins/pigment --cwd .
```

## Enable Pigment MCP

Pigment generates a workspace-specific MCP URL under Pigment settings:

```text
Settings > Integrations > MCP
```

Set that URL before installing or re-enabling the plugin:

```bash
export CLINE_PIGMENT_MCP_URL="https://pigment.app/api/mcp/public/your-mcp-id"
cline plugin install pigment
```

If `CLINE_PIGMENT_MCP_URL` is not set, the plugin still installs the Pigment skills, but it does not create a Pigment MCP settings entry.

## Example Usage

After installation, ask Cline:

```text
Review this Pigment formula for correctness and performance before I apply it.
```

With Pigment MCP configured, ask:

```text
List my Pigment applications, find the revenue metrics in the FP&A model, and explain which ones are enabled for AI data access.
```

## Requirements

- A Pigment workspace.
- Pigment MCP enabled in `Settings > Integrations > MCP` when live workspace access is needed.
- Pigment OAuth in Cline's MCP flow after the MCP server is registered.
- Advanced MCP tools enabled in Pigment only when Cline should help create or edit modeling objects.

## Security Notes

Pigment data and model changes can affect financial planning workflows. The bundled skills require explicit confirmation before Cline uses advanced MCP tools for writes, imports, access-right changes, board or view edits, scenario or snapshot changes, and deletions.

Advanced MCP search can expose block metadata and application logic, including names, data types, dimensions, and model structure, even when it does not expose actual metric data. Treat that metadata as sensitive workspace context and avoid putting secrets in Pigment block names or metadata.

The bundled skills are licensed by Pigment for use with Pigment services. See `LICENSE.pigment-skills`. The bundled markdown has been format-normalized for this repository's validation rules and is not represented as an official or endorsed Pigment distribution.
52 changes: 52 additions & 0 deletions plugins/pigment/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
import type { AgentPlugin } from "@cline/sdk"

const PIGMENT_MCP_URL_ENV = "CLINE_PIGMENT_MCP_URL"

type PigmentMcpUrlConfig =
| { status: "unset" }
| { status: "valid"; url: string }
| { status: "invalid"; reason: string }

function readPigmentMcpUrl(): PigmentMcpUrlConfig {
const raw = process.env[PIGMENT_MCP_URL_ENV]?.trim()
if (!raw) {
return { status: "unset" }
}

try {
const url = new URL(raw)
if (url.protocol !== "https:") {
return { status: "invalid", reason: "URL must use https" }
}
return { status: "valid", url: url.toString() }
} catch {
return { status: "invalid", reason: "URL could not be parsed" }
}
}

const plugin: AgentPlugin = {
name: "pigment",
manifest: {
capabilities: ["mcp", "skills"],
},
setup(api) {
const pigmentMcpUrl = readPigmentMcpUrl()
if (pigmentMcpUrl.status === "invalid") {
throw new Error(
`Invalid ${PIGMENT_MCP_URL_ENV}: ${pigmentMcpUrl.reason}. Set it to the https URL from Pigment Settings > Integrations > MCP, or unset it to install skills only.`,
)
}

if (pigmentMcpUrl.status === "valid") {
api.registerMcpServer({
name: "pigment",
transport: {
type: "streamableHttp",
url: pigmentMcpUrl.url,
},
})
}
},
}

export default plugin
20 changes: 20 additions & 0 deletions plugins/pigment/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"name": "pigment",
"version": "0.0.0",
"private": true,
"type": "module",
"description": "Cline plugin with Pigment planning, modeling, formula, and workspace skills.",
"cline": {
"plugins": [
{
"paths": [
"./index.ts"
],
"capabilities": [
"mcp",
"skills"
]
}
]
}
}
Loading