Skip to content
Back to skills

Source 829a7bed1a6c6378c83a2c60

ASecurity

Publishes a standalone Fund Performance live artifact for the user's Carta firm — a page that opens directly on the fund performance table and fetches its data live from Carta each time it is opened. Use when the user asks for a fund performance dashboard, page, or artifact they can keep open and re-share. Trigger phrases: "fund performance dashboard", "fund performance artifact", "build me a fund performance page", "publish a fund performance dashboard", "standalone fund performance view". D...

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
ai-agentspythonbashapiperformance

Works with

  • cli
  • api
  • mcp

Security analysis

A100/100

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

Scanned November 7, 2026

npx -y skills add gutsofpratik/OpenClaude-Skills --skill source-829a7bed1a6c6378c83a2c60 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Source 829a7bed1a6c6378c83a2c60?

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

Security grade badge for Source 829a7bed1a6c6378c83a2c60
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gutsofpratik-source-829a7bed1a6c6378c83a2c60/badge)](https://www.skillsdirectory.com/skills/gutsofpratik-source-829a7bed1a6c6378c83a2c60)

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: carta-fund-performance
description: >
  Publishes a standalone Fund Performance live artifact for the user's Carta firm — a
  page that opens directly on the fund performance table and fetches its data live from
  Carta each time it is opened. Use when the user asks for a fund performance dashboard,
  page, or artifact they can keep open and re-share.
  Trigger phrases: "fund performance dashboard", "fund performance artifact",
  "build me a fund performance page", "publish a fund performance dashboard",
  "standalone fund performance view".
  Do NOT use to answer a performance question in chat ("what percentile is our TVPI?",
  "how does Fund II compare to peers?") — that is carta-portfolio-analytics-routing.
  Do NOT use for NAV or general fund financial queries — use carta-explore-data.
  Do NOT use for the full Carta Home surface (capital activity, schedule of investments,
  news) — use carta-home-build; this skill is the fund-performance page alone.
version: 1.0.0
model: inherit
allowed-tools:
  - Read
  - Artifact
  - Bash(uv run "${CLAUDE_PLUGIN_ROOT}/skills/carta-fund-performance/scripts/render-artifact.py" *)
---

<!-- carta:plugin-version -->
<carta-plugin>carta-investors:6.71.0</carta-plugin>

# Fund Performance Dashboard

Publishes a self-contained live artifact showing one firm's fund performance. The
artifact resolves the firm context at runtime through `window.claude.use("mcp")`, so no
firm UUID or MCP server name is substituted at build time.

## What the artifact shows

| Section | Notes |
|---|---|
| All-funds table | Fund name, Net IRR, TVPI, DPI, MOIC, NAV, Total Value — sortable, top 50 funds by NAV |
| Per-fund detail view | Time-series charts for TVPI, DPI, Net IRR and MOIC against peer benchmark percentiles (P25/P50/P75/P90) |
| Fund selector | Dropdown on the fund title, to switch funds without returning to the list |

Navigation: list view → click a fund row → detail view → "← Back to all funds".

Amounts render in each fund's own `FUND_REPORTING_CURRENCY`. A fund with no reporting
currency renders bare numbers — the artifact never assumes a currency.

## Step 1 — Render the page

Run this on one line, with the path exactly as written and quoted — do not search for the
script. `<CWD>` is the session's current directory:

```bash
uv run "${CLAUDE_PLUGIN_ROOT}/skills/carta-fund-performance/scripts/render-artifact.py" "<CWD>/fund-performance.html"
```

When Carta Home is building this page, it gives you its own URL. Append
`--home-url "<carta_home_url>"` so the page's "Back to Home" link points there. Without it
the link stays hidden.

The script prints the absolute path it wrote. If it fails, show the error and stop. Never
publish the template itself: its Home link is a placeholder.

## Step 2 — Publish the artifact

Publish the rendered file with the Artifact tool. The artifact calls `fetch` (`dwh:execute:query`),
`list_contexts` and `set_context`, so grant exactly those. Set `server` to the viewer's
Carta connector display name from `${CLAUDE_PLUGIN_ROOT}/references/gate-carta-connector-name.md`
(the plugin's `references/`, not this skill's); the page looks that name up at runtime.

```python
Artifact(
    file_path="<path the render script printed>",
    favicon="📈",
    title="Fund Performance",
    description="Live fund performance dashboard — IRR, TVPI, DPI and MOIC against peer benchmarks.",
    capabilities={"mcp": {"servers": [{"server": "<carta_connector_name>", "tools": ["fetch", "list_contexts", "set_context"]}]}},
)
```

To update a dashboard published earlier, pass `url="<existing artifact URL>"` so the
link stays the same. Without it a second artifact is created.

## Step 3 — Respond

Say in one sentence that the dashboard is ready, and that clicking a fund opens its
charts. Do not restate the metrics.

## Error handling

The artifact handles these itself — no action needed in the skill:

- **No Carta MCP connected** → the page shows a "Connect Carta" prompt.
- **No fund data returned** → the page shows an error with a Retry button.
- **NULL benchmark percentiles** → illustrative trajectories are drawn, labelled
  "Illustrative benchmark data".

## File structure

```
carta-fund-performance/
  SKILL.md
  references/
    artifact.html     ← self-contained page: inline Chart.js, CSS and JS
  scripts/
    render-artifact.py ← stamps the Carta Home link into the page
```

The CSP in the artifact runtime allows no external script, style or connect host, so
everything is inlined and nothing may be converted to a CDN reference.

Files in this skill

  • PROVENANCE.json216 B
  • SKILL.md4.5 KB
  • UPSTREAM-LICENSE.txt11 KB
  • scripts/render-artifact.py1.4 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.