SkillAtlasSkill 详情

abridge-debug-bundle

A model-agnostic agent-skills platform.

审核状态:已审核Quality 72Security 70

复制安装命令

用 Codex 或 Claude 安装复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它先审查 Skill 页面再帮你安装。

复制前请先查看来源、License 和安全提示。

项目 README

来源文件:README.md

抓取于 2026年8月26日

Tons of Skills

A model-agnostic agent-skills platform. The canonical layer is harness-free by construction; Claude Code is currently the verified-native harness. Other harnesses remain engineering candidates until their native-path integration is verified; source research alone is never presented as public support.

Release CLI Plugins Skills GitHub Stars skills.sh Sponsor: Kobiton Buy me a monster

ko-fi

Install

Inside Claude Code, one command installs the whole marketplace:

/plugin marketplace add jeremylongshore/claude-code-plugins

Or use the CLI:

pnpm add -g @intentsolutionsio/ccpi
ccpi install devops-automation-pack

Browse the marketplace · Explore plugins · Download bundles

Killer Skill of the Week — no-ai-slop by Peter Yang

Strip AI slop from any draft — named-pattern edits that keep the writer's real voice

no-ai-slop does two jobs and refuses to fake a third. In Edit mode it makes the minimum effective edit — cutting throat-clearing, weak verbs, and abstract nouns while deliberately preserving the writer's cadence, bluntness, humor, and honest admissions, so a rough draft still sounds like the same person afterward. In Detect mode it names each AI-slop pattern it finds, quotes the offending line, and gives the fix in a few words — and pointedly does NOT score the draft or guess whether an AI wrote it. That restraint is the whole point: AI detectors guess; named patterns are evidence the reader can check. MIT-licensed, single focused skill, actively maintained by Peter Yang.

"AI detectors guess. Named patterns are evidence the user can check." — Peter Yang

Grade: A | Week of July 22, 2026 (W30) | View on GitHub

Previous picks: tonone, mnemos, databricks-pack, kobiton-automate, skyvern, code-cleanup, web-analytics, token-optimizer, executive-assistant-skills, skill-creator, cursor-pack, crypto-portfolio-tracker. See all at tonsofskills.com.

Scale, labeled

Every number below names the cohort it counts and the command that reproduces it — an unlabeled count is how a corpus ends up with five contradictory answers to "how many skills."

CountCohortReproduce with
442catalog plugins (catalog-entry cohort)node scripts/generate-readme-toc.mjs over marketplace.extended.json
3,067marketplace-visible skills (distinct)node -e "import('./scripts/corpus-resolver.mjs').then(m=>console.log(m.resolveCorpus('marketplace-visible').length))"
347agent definitions in pluginsgit ls-files 'plugins/**' | grep '/agents/.*\.md'
19plugin categoriesls -d plugins/*/

📦 Live npm Downloads

Across 396 published packages in the claude-code-plugins namespace. Updated daily by GitHub Actions.

WindowAll packagesEstablished (>30d)
Last 24 hours962962
Last 7 days2,9202,916
Last 30 days12,86812,779

"Established" excludes packages first published within the last 30 days, so a bulk-publish event doesn't dominate the headline.

Top 10 by last 30 days:

#PackageLast 30d
1@intentsolutionsio/openrouter-pack556
2@intentsolutionsio/groq-pack496
3@intentsolutionsio/databricks-pack274
4@intentsolutionsio/clickhouse-pack273
5@intentsolutionsio/wallet-security-auditor263
6@intentsolutionsio/notion-pack258
7@intentsolutionsio/elevenlabs-pack244
8@intentsolutionsio/freshie-inventory-manager214
9@intentsolutionsio/supabase-pack210
10@intentsolutionsio/agency-os204

Last refreshed 2026-08-19T03:03:05.709Z.

Ways in

Five real questions, five doors — each resolves to a live, generated surface, never a hand-maintained list:

Browse by category

The 19 categories below link into the live marketplace. Plugin counts are the catalog-entry cohort — regenerated from marketplace.extended.json by this generator; the catalog itself lives on tonsofskills.com, never in this file (§ 6A of the platform blueprint).

CategoryPlugins
🤖AI & Machine Learning36
🎭AI Agents & Agency10
🔌API Development26
💼Business Tools6
👥Community21
₿Crypto & Web327
💾Database26
🎨Design2
🔧DevOps & Infrastructure36
📚Examples & Templates5
🧩MCP Servers16
📦Packages5
⚡Performance25
✅Productivity30
🎁SaaS Skill Packs106
🔐Security27
✨Skill Enhancers9
🧪Testing28
📁Analytics1

What the classes mean

Four artifact classes live in this repository, distinguished on sight and never blurred — provenance is a truth requirement here, not a UX nicety:

ClassWhat it isHow the reader can tell
Canonical skillFirst-party, harness-free, the source of truthNo .source.json in its plugin directory
Generated adapterA thin, machine-produced harness projectionLives under a generated path with a "generated — do not edit" header
First-party packageAn Intent Solutions distribution (npm, cowork zip)@intentsolutionsio scope, IS-authored license
Upstream mirrorSomebody else's work, hosted mirror-by-default.source.json present — upstream author, license, and pinned commit recorded

Certification

Not yet certified. The certification program (tiers T0–T4 with retained, hash-matched evidence) is a later epic of the platform blueprint; until its report exists, no artifact on this surface claims a tier. This line is rendered from the absence of certification-report.json — honestly, not cosmetically.

Contribute

Start with the contribution guide, then the intake and review standards every submission passes through:

Governance

Provenance

External plugins are hosted mirror-by-default: the contributor's repository stays the source of truth, every mirrored source is pinned in a content lockfile, and upstream credit — author, license, resolved commit — is recorded in the mirror itself. Improvements flow by upstreaming to the author's repository, never by silently editing the mirror. The full decision record is the external-sync model.

License

MIT for the repository scaffolding and first-party tooling; each plugin carries its own license in its manifest, and mirrored plugins keep their upstream license verbatim.

测试与质量商业与运营

中风险

  • 来源需自行核对维护者身份。
  • 包含脚本或命令调用,安装前请复核。
  • 可能需要外部 token、网络权限或第三方服务。
  • 未检测到高风险命令。
  • 扫描发现:3 条。

Codex — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jeremylongshore/tons-of-skills-marketplace.git
  3. 将 "skills/.curated/abridge-debug-bundle" 文件夹复制到 Codex 的 skills 目录中。
  4. 重启 Codex 让新的 skill 生效。

Codex — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Codex 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Codex 让新的 skill 生效。

Claude Code — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jeremylongshore/tons-of-skills-marketplace.git
  3. 将 "skills/.curated/abridge-debug-bundle" 文件夹复制到 Claude Code 的 skills 目录中。
  4. 重启 Claude Code 让新的 skill 生效。

Claude Code — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Claude Code 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Claude Code 让新的 skill 生效。

Cursor — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jeremylongshore/tons-of-skills-marketplace.git
  3. 将 "skills/.curated/abridge-debug-bundle" 文件夹复制到 Cursor 的 skills 目录中。
  4. 重启 Cursor 让新的 skill 生效。

Cursor — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Cursor 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Cursor 让新的 skill 生效。

GitHub Copilot — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jeremylongshore/tons-of-skills-marketplace.git
  3. 将 "skills/.curated/abridge-debug-bundle" 文件夹复制到 GitHub Copilot 的 skills 目录中。
  4. 重启 GitHub Copilot 让新的 skill 生效。

GitHub Copilot — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 GitHub Copilot 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 GitHub Copilot 让新的 skill 生效。

Windsurf — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jeremylongshore/tons-of-skills-marketplace.git
  3. 将 "skills/.curated/abridge-debug-bundle" 文件夹复制到 Windsurf 的 skills 目录中。
  4. 重启 Windsurf 让新的 skill 生效。

Windsurf — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Windsurf 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Windsurf 让新的 skill 生效。
查看 SKILL.md 原文
name: abridge-debug-bundle
description: 'Collect Abridge debug evidence for support tickets and troubleshooting.

  Use when filing Abridge support tickets, collecting diagnostic data,

  or preparing evidence for escalation to Abridge engineering.

  Trigger: "abridge debug bundle", "abridge support ticket",

  "abridge diagnostics", "collect abridge evidence".

  '
allowed-tools: Read, Write, Edit, Bash(curl:*), Bash(node:*), Grep
version: 1.4.0
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags:
- saas
- healthcare
- ai
- abridge
- debugging
compatibility: Designed for Claude Code

Abridge Debug Bundle

Overview

Collect HIPAA-safe diagnostic data for Abridge support tickets. All PHI is automatically redacted before bundle creation.

Prerequisites

  • Abridge credentials configured
  • Access to application logs
  • Node.js or bash for running diagnostic scripts

Instructions

Step 1: Generate Debug Bundle

// src/debug/abridge-debug-bundle.ts
import fs from 'fs';
import { execSync } from 'child_process';

interface DebugBundle {
  timestamp: string;
  environment: Record<string, string>;
  connectivity: Record<string, any>;
  recentErrors: any[];
  sessionDiagnostics: any[];
  fhirStatus: any;
}

async function generateDebugBundle(): Promise<DebugBundle> {
  const bundle: DebugBundle = {
    timestamp: new Date().toISOString(),
    environment: collectEnvironment(),
    connectivity: await testConnectivity(),
    recentErrors: await collectRecentErrors(),
    sessionDiagnostics: await collectSessionDiagnostics(),
    fhirStatus: await checkFhirStatus(),
  };

  // Redact PHI before saving
  const sanitized = redactPhi(JSON.stringify(bundle, null, 2));
  const filename = `abridge-debug-${Date.now()}.json`;
  fs.writeFileSync(filename, sanitized);
  console.log(`Debug bundle saved: ${filename}`);

  return bundle;
}

function collectEnvironment(): Record<string, string> {
  return {
    nodeVersion: process.version,
    platform: process.platform,
    abridgeBaseUrl: process.env.ABRIDGE_BASE_URL || 'NOT SET',
    orgId: process.env.ABRIDGE_ORG_ID ? 'SET (redacted)' : 'NOT SET',
    clientSecret: process.env.ABRIDGE_CLIENT_SECRET ? 'SET (redacted)' : 'NOT SET',
    fhirBaseUrl: process.env.EPIC_FHIR_BASE_URL || 'NOT SET',
    timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
  };
}

async function testConnectivity(): Promise<Record<string, any>> {
  const results: Record<string, any> = {};
  const endpoints = [
    { name: 'abridge_api', url: `${process.env.ABRIDGE_BASE_URL}/health` },
    { name: 'fhir_server', url: `${process.env.EPIC_FHIR_BASE_URL}/metadata` },
  ];

  for (const ep of endpoints) {
    try {
      const start = Date.now();
      const res = await fetch(ep.url, { signal: AbortSignal.timeout(5000) });
      results[ep.name] = { status: res.status, latency_ms: Date.now() - start };
    } catch (err) {
      results[ep.name] = { status: 'UNREACHABLE', error: (err as Error).message };
    }
  }
  return results;
}

function redactPhi(text: string): string {
  return text
    .replace(/\b\d{3}-\d{2}-\d{4}\b/g, '[SSN-REDACTED]')
    .replace(/\b\d{10}\b/g, '[MRN-REDACTED]')
    .replace(/"(name|patient_name|given|family)":\s*"[^"]+"/g, '"$1": "[REDACTED]"')
    .replace(/\b\d{1,2}\/\d{1,2}\/\d{2,4}\b/g, '[DOB-REDACTED]');
}

Step 2: Session-Level Diagnostics

async function collectSessionDiagnostics(): Promise<any[]> {
  const api = AbridgeApiClient.getInstance().http;
  try {
    const { data } = await api.get('/encounters/sessions', {
      params: { status: 'error', limit: 10, order: 'desc' },
    });
    return data.sessions.map((s: any) => ({
      session_id: s.session_id,
      status: s.status,
      error_code: s.error_code,
      specialty: s.specialty,
      created_at: s.created_at,
      segment_count: s.segment_count,
      // No PHI fields included
    }));
  } catch {
    return [{ error: 'Could not fetch session diagnostics' }];
  }
}

Step 3: Bash Quick Diagnostic

#!/bin/bash
# scripts/abridge-quick-diag.sh

echo "=== Abridge Quick Diagnostics $(date -Iseconds) ==="

echo -e "\n--- Environment ---"
echo "ABRIDGE_BASE_URL: ${ABRIDGE_BASE_URL:-NOT SET}"
echo "ABRIDGE_ORG_ID: ${ABRIDGE_ORG_ID:+SET (redacted)}"
echo "ABRIDGE_CLIENT_SECRET: ${ABRIDGE_CLIENT_SECRET:+SET (redacted)}"

echo -e "\n--- Connectivity ---"
echo -n "API Health: "
curl -s -o /dev/null -w "%{http_code} (%{time_total}s)" \
  -H "Authorization: Bearer $ABRIDGE_CLIENT_SECRET" \
  -H "X-Org-Id: $ABRIDGE_ORG_ID" \
  "$ABRIDGE_BASE_URL/health"

echo -e "\n\n--- TLS Info ---"
echo | openssl s_client -connect "$(echo $ABRIDGE_BASE_URL | sed 's|https://||'):443" 2>/dev/null \
  | openssl x509 -noout -subject -dates 2>/dev/null

echo -e "\n--- DNS Resolution ---"
dig +short "$(echo $ABRIDGE_BASE_URL | sed 's|https://||')" 2>/dev/null || echo "dig not available"

echo -e "\n=== Diagnostics Complete ==="

Output

  • abridge-debug-{timestamp}.json file with all PHI redacted
  • Environment configuration status
  • Connectivity test results with latency
  • Recent error sessions (metadata only, no PHI)

Error Handling

IssueCauseSolution
Bundle contains PHIRedaction regex missed a patternAdd pattern to redactPhi() function
Cannot reach APINetwork/firewall issueCheck DNS, TLS cert, firewall rules
Empty error listNo recent errorsGood sign — check if issue is client-side

Resources

Next Steps

For rate limiting patterns, see abridge-rate-limits.

发现问题?提交给管理员复核

评分:

评论 (0)

暂无评论,成为第一个评论者吧!