Content Analysis
liangdabiao/claude-data-analysis-ultra-main
Analyze text content using both traditional NLP and LLM-enhanced methods.
Detect crisis signals in user content using NLP, mental health sentiment analysis, and safe intervention protocols.
$ npx skills add curiositech/some_claude_skills --skill crisis-detection-intervention-ai -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install curiositech/some_claude_skills crisis-detection-intervention-ai --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/curiositech/some_claude_skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/crisis-detection-intervention-ai .claude/skills/crisis-detection-intervention-ai && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "crisis-detection-intervention-ai" agent skill from https://github.com/curiositech/some_claude_skills/tree/main/.claude/skills/crisis-detection-intervention-ai into .claude/skills/crisis-detection-intervention-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "crisis-detection-intervention-ai", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/curiositech/some_claude_skills/tree/main/.claude/skills/crisis-detection-intervention-aiType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add curiositech/some_claude_skills --skill crisis-detection-intervention-ai -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install curiositech/some_claude_skills crisis-detection-intervention-ai --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/curiositech/some_claude_skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/crisis-detection-intervention-ai .agents/skills/crisis-detection-intervention-ai && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "crisis-detection-intervention-ai" agent skill from https://github.com/curiositech/some_claude_skills/tree/main/.claude/skills/crisis-detection-intervention-ai into .agents/skills/crisis-detection-intervention-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "crisis-detection-intervention-ai", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add curiositech/some_claude_skills --skill crisis-detection-intervention-ai -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install curiositech/some_claude_skills crisis-detection-intervention-ai --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/curiositech/some_claude_skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/crisis-detection-intervention-ai .cursor/skills/crisis-detection-intervention-ai && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "crisis-detection-intervention-ai" agent skill from https://github.com/curiositech/some_claude_skills/tree/main/.claude/skills/crisis-detection-intervention-ai into .cursor/skills/crisis-detection-intervention-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "crisis-detection-intervention-ai", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/curiositech/some_claude_skills.git --path .claude/skills/crisis-detection-intervention-ai--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add curiositech/some_claude_skills --skill crisis-detection-intervention-ai -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install curiositech/some_claude_skills crisis-detection-intervention-ai --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/curiositech/some_claude_skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/crisis-detection-intervention-ai .gemini/skills/crisis-detection-intervention-ai && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "crisis-detection-intervention-ai" agent skill from https://github.com/curiositech/some_claude_skills/tree/main/.claude/skills/crisis-detection-intervention-ai into .gemini/skills/crisis-detection-intervention-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "crisis-detection-intervention-ai", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install curiositech/some_claude_skills crisis-detection-intervention-aiInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add curiositech/some_claude_skills --skill crisis-detection-intervention-ai -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/curiositech/some_claude_skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/crisis-detection-intervention-ai .github/skills/crisis-detection-intervention-ai && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "crisis-detection-intervention-ai" agent skill from https://github.com/curiositech/some_claude_skills/tree/main/.claude/skills/crisis-detection-intervention-ai into .github/skills/crisis-detection-intervention-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "crisis-detection-intervention-ai", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add curiositech/some_claude_skills --skill crisis-detection-intervention-ai -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install curiositech/some_claude_skills crisis-detection-intervention-ai --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/curiositech/some_claude_skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/crisis-detection-intervention-ai .opencode/skills/crisis-detection-intervention-ai && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "crisis-detection-intervention-ai" agent skill from https://github.com/curiositech/some_claude_skills/tree/main/.claude/skills/crisis-detection-intervention-ai into .opencode/skills/crisis-detection-intervention-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "crisis-detection-intervention-ai", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
crisis-detection-intervention-aiDetect crisis signals in user content using NLP, mental health sentiment analysis, and safe intervention protocols.
Crisis Detection Intervention AI is an agent skill from curiositech/some_claude_skills. Detect crisis signals in user content using NLP, mental health sentiment analysis, and safe intervention protocols. Implements suicide ideation detection, automated escalation, and crisis resource integration. Use for mental health apps, recovery platforms, support communities. Activate on "crisis detection", "suicide prevention", "mental health NLP", "intervention protocol". NOT for general sentiment analysis, medical diagnosis, or replacing professional help.
Its SKILL.md is about 3.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including scripts and reference files (for example `.claude-plugin/plugin.json`, `references/crisis-resources.md` and `references/intervention-protocols.md`).
It sits in Productivity & Automation, covering Health and fitness tracking, Customer feedback analysis and Natural language processing. The repository describes itself as: Claude skills that make my life easier. The licence is MIT.
Read from SKILL.md and the folder at commit 6713fc7. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadWriteEditBash(npm:*)From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (TypeScript), which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
988lifeline.orgFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
CRISIS_DATA_KEYANTHROPIC_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Crisis Detection Intervention AI loads about 3.8k tokens when it runs, and up to ~12k if it reads all its reference files. Until then it costs about 125 tokens; SKILL.md has 456 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from curiositech/some_claude_skills at commit 6713fc7, republished under its MIT licence (© curiositech). 456 words, ~3,807 tokens.
.claude/skills/crisis-detection-intervention-ai/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Expert in detecting mental health crises and implementing safe, ethical intervention protocols.
This skill assists with crisis detection, NOT crisis response.
✅ Appropriate uses:
❌ NOT a substitute for:
Always provide crisis hotlines: National Suicide Prevention Lifeline: 988
✅ Use for:
❌ NOT for:
Detected concerning content?
├── Immediate danger? → Escalate to crisis counselor + show 988
├── Suicidal ideation? → Flag for review + show resources
├── Substance relapse? → Connect to sponsor + resources
├── Self-harm mention? → Gentle check-in + resources
└── General distress? → Supportive response + resources| Model | Best For | Accuracy | Latency |
|---|---|---|---|
| MentalBERT | Mental health text | 89% | 50ms |
| GPT-4 + Few-shot | Crisis detection | 92% | 200ms |
| RoBERTa-Mental | Depression detection | 87% | 40ms |
| Custom Fine-tuned BERT | Domain-specific | 90%+ | 60ms |
Timeline:
Novice thinking: "Negative sentiment = crisis"
Problem: Mental health language is nuanced, context-dependent.
Wrong approach:
// ❌ Generic sentiment misses mental health signals
const sentiment = analyzeSentiment(text);
if (sentiment.score < -0.5) {
alertCrisis(); // Too broad!
}Why wrong: "I'm tired" vs "I'm tired of living" - different meanings, same sentiment.
Correct approach:
// ✅ Mental health-specific model
import { pipeline } from '@huggingface/transformers';
const detector = await pipeline('text-classification', 'mental/bert-base-uncased');
const result = await detector(text, {
labels: ['suicidal_ideation', 'self_harm', 'substance_relapse', 'safe']
});
if (result[0].label === 'suicidal_ideation' && result[0].score > 0.8) {
await escalateToCrisisCounselor({
text,
confidence: result[0].score,
timestamp: Date.now()
});
// IMMEDIATELY show crisis resources
showCrisisResources({
phone: '988',
text: 'Text "HELLO" to 741741',
chat: 'https://988lifeline.org/chat'
});
}Timeline context:
Problem: AI cannot replace empathy, may escalate distress.
Wrong approach:
// ❌ AI auto-responds to crisis
if (isCrisis(text)) {
await sendMessage(userId, "I'm concerned about you. Are you okay?");
}Why wrong:
Correct approach:
// ✅ Flag for human review, show resources
if (isCrisis(text)) {
// 1. Flag for counselor review
await flagForReview({
userId,
text,
severity: 'high',
detectedAt: Date.now(),
requiresImmediate: true
});
// 2. Notify on-call counselor
await notifyOnCallCounselor({
userId,
summary: 'Suicidal ideation detected',
urgency: 'immediate'
});
// 3. Show resources (no AI message)
await showInAppResources({
type: 'crisis_support',
resources: [
{ name: '988 Suicide & Crisis Lifeline', link: 'tel:988' },
{ name: 'Crisis Text Line', link: 'sms:741741' },
{ name: 'Chat Now', link: 'https://988lifeline.org/chat' }
]
});
// 4. DO NOT send automated "are you okay" message
}Human review flow:
AI Detection → Flag → On-call counselor notified → Human reaches outProblem: User in crisis needs help NOW, not later.
Wrong approach:
// ❌ Just flags, no immediate help
if (isCrisis(text)) {
await logCrisisEvent(userId, text);
// User left with no resources
}Correct approach:
// ✅ Immediate resources + escalation
if (isCrisis(text)) {
// Show resources IMMEDIATELY (blocking modal)
await showCrisisModal({
title: 'Resources Available',
resources: [
{
name: '988 Suicide & Crisis Lifeline',
description: 'Free, confidential support 24/7',
action: 'tel:988',
type: 'phone'
},
{
name: 'Crisis Text Line',
description: 'Text support with trained counselor',
action: 'sms:741741',
message: 'HELLO',
type: 'text'
},
{
name: 'Chat with counselor',
description: 'Online chat support',
action: 'https://988lifeline.org/chat',
type: 'web'
}
],
dismissible: true, // User can close, but resources shown first
analytics: { event: 'crisis_resources_shown', source: 'ai_detection' }
});
// Then flag for follow-up
await flagForReview({ userId, text, severity: 'high' });
}Problem: Crisis content is extremely sensitive PHI.
Wrong approach:
// ❌ Plain text storage
await db.logs.insert({
userId: user.id,
type: 'crisis',
content: text, // Stored in plain text!
timestamp: Date.now()
});Why wrong: Data breach exposes most vulnerable moments.
Correct approach:
// ✅ Encrypted, access-logged, auto-deleted
import { encrypt, decrypt } from './encryption';
await db.crisisEvents.insert({
id: generateId(),
userId: hashUserId(user.id), // Hash, not plain ID
contentHash: hashContent(text), // For deduplication only
encryptedContent: encrypt(text, process.env.CRISIS_DATA_KEY),
detectedAt: Date.now(),
reviewedAt: null,
reviewedBy: null,
autoDeleteAt: Date.now() + (30 * 24 * 60 * 60 * 1000), // 30 days
accessLog: []
});
// Log all access
await logAccess({
eventId: crisisEvent.id,
accessedBy: counselorId,
accessedAt: Date.now(),
reason: 'Review for follow-up',
ipAddress: hashedIp
});
// Auto-delete after retention period
schedule.daily(() => {
db.crisisEvents.deleteMany({
autoDeleteAt: { $lt: Date.now() }
});
});HIPAA Requirements:
Problem: No clear path from detection to human intervention.
Wrong approach:
// ❌ Flags crisis but no escalation process
if (isCrisis(text)) {
await db.flags.insert({ userId, text, flaggedAt: Date.now() });
// Now what? Who responds?
}Correct approach:
// ✅ Clear escalation protocol
enum CrisisSeverity {
LOW = 'low', // Distress, no immediate danger
MEDIUM = 'medium', // Self-harm thoughts, no plan
HIGH = 'high', // Suicidal ideation with plan
IMMEDIATE = 'immediate' // Imminent danger
}
async function escalateCrisis(detection: CrisisDetection): Promise<void> {
const severity = assessSeverity(detection);
switch (severity) {
case CrisisSeverity.IMMEDIATE:
// Notify on-call counselor (push notification)
await notifyOnCall({
userId: detection.userId,
severity,
requiresResponse: 'immediate',
text: detection.text
});
// Send SMS to backup on-call if no response in 5 min
setTimeout(async () => {
if (!await hasResponded(detection.id)) {
await notifyBackupOnCall(detection);
}
}, 5 * 60 * 1000);
// Show 988 modal (blocking)
await show988Modal(detection.userId);
break;
case CrisisSeverity.HIGH:
// Notify on-call counselor (email + push)
await notifyOnCall({ severity, requiresResponse: '1 hour' });
// Show crisis resources
await showCrisisResources(detection.userId);
break;
case CrisisSeverity.MEDIUM:
// Add to review queue for next business day
await addToReviewQueue({ priority: 'high' });
// Suggest self-help resources
await suggestResources(detection.userId, 'coping_strategies');
break;
case CrisisSeverity.LOW:
// Add to review queue
await addToReviewQueue({ priority: 'normal' });
break;
}
// Always log for audit
await logEscalation({
detectionId: detection.id,
severity,
actions: ['notified_on_call', 'showed_resources'],
timestamp: Date.now()
});
}interface CrisisSignal {
type: 'suicidal_ideation' | 'self_harm' | 'substance_relapse' | 'severe_distress';
confidence: number;
evidence: string[];
}
async function detectCrisisSignals(text: string): Promise<CrisisSignal[]> {
const signals: CrisisSignal[] = [];
// Signal 1: NLP model
const nlpResult = await mentalHealthNLP(text);
if (nlpResult.score > 0.75) {
signals.push({
type: nlpResult.label,
confidence: nlpResult.score,
evidence: ['NLP model detection']
});
}
// Signal 2: Keyword matching (backup)
const keywords = detectKeywords(text);
if (keywords.length > 0) {
signals.push({
type: 'suicidal_ideation',
confidence: 0.6,
evidence: keywords
});
}
// Signal 3: Sentiment + context
const sentiment = await sentimentAnalysis(text);
const hasHopelessness = /no (hope|point|reason|future)/i.test(text);
if (sentiment.score < -0.8 && hasHopelessness) {
signals.push({
type: 'severe_distress',
confidence: 0.7,
evidence: ['Extreme negative sentiment + hopelessness language']
});
}
return signals;
}const CRISIS_KEYWORDS = {
suicidal_ideation: [
/\b(kill|end|take)\s+(my|own)\s+life\b/i,
/\bsuicide\b/i,
/\bdon'?t\s+want\s+to\s+(live|be here|exist)\b/i,
/\bbetter off dead\b/i
],
self_harm: [
/\b(cut|cutting|hurt)\s+(myself|me)\b/i,
/\bself[- ]harm\b/i
],
substance_relapse: [
/\b(relapsed|used|drank)\s+(again|today)\b/i,
/\bback on\s+(drugs|alcohol)\b/i
]
};
function detectKeywords(text: string): string[] {
const matches: string[] = [];
for (const [type, patterns] of Object.entries(CRISIS_KEYWORDS)) {
for (const pattern of patterns) {
if (pattern.test(text)) {
matches.push(type);
}
}
}
return [...new Set(matches)]; // Deduplicate
}import Anthropic from '@anthropic-ai/sdk';
const client = new Anthropic({ apiKey: process.env.ANTHROPIC_API_KEY });
async function detectWithClaude(text: string): Promise<CrisisDetection> {
const response = await client.messages.create({
model: 'claude-3-5-sonnet-20241022',
max_tokens: 200,
messages: [{
role: 'user',
content: `You are a mental health crisis detection system. Analyze this text for crisis signals.
Text: "${text}"
Respond in JSON:
{
"is_crisis": boolean,
"severity": "none" | "low" | "medium" | "high" | "immediate",
"signals": ["suicidal_ideation" | "self_harm" | "substance_relapse"],
"confidence": 0.0-1.0,
"reasoning": "brief explanation"
}
Examples:
- "I'm thinking about ending it all" → { "is_crisis": true, "severity": "high", "signals": ["suicidal_ideation"], "confidence": 0.95 }
- "I relapsed today, feeling ashamed" → { "is_crisis": true, "severity": "medium", "signals": ["substance_relapse"], "confidence": 0.9 }
- "Had a tough day at work" → { "is_crisis": false, "severity": "none", "signals": [], "confidence": 0.95 }`
}]
});
const result = JSON.parse(response.content[0].text);
return result;
}□ Mental health-specific NLP model (not generic sentiment)
□ Human review required before automated action
□ Crisis resources shown IMMEDIATELY (988, text line)
□ Clear escalation protocol (severity-based)
□ Encrypted storage of crisis content
□ Access logging for all crisis data access
□ Auto-deletion after retention period (30 days)
□ On-call counselor notification system
□ Backup notification if no response
□ False positive tracking (improve model)
□ Regular model evaluation with experts
□ Ethics review board approval| Scenario | Appropriate? |
|---|---|
| Journaling app for recovery | ✅ Yes - monitor for relapses |
| Support group chat | ✅ Yes - flag concerning posts |
| Therapy platform messages | ✅ Yes - assist therapists |
| Public social media | ❌ No - privacy concerns |
| Replace human counselors | ❌ Never - AI assists, doesn't replace |
| Medical diagnosis | ❌ Never - not qualified |
/references/mental-health-nlp.md - NLP models for mental health/references/intervention-protocols.md - Evidence-based intervention strategies/references/crisis-resources.md - Hotlines, text lines, and support servicesscripts/crisis_detector.ts - Real-time crisis detection systemscripts/model_evaluator.ts - Evaluate detection accuracy with test casesThis skill guides: Crisis detection | Mental health NLP | Intervention protocols | Suicide prevention | HIPAA compliance | Ethical AI
© curiositech, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (scripts, references) in .claude/skills/crisis-detection-intervention-ai of curiositech/some_claude_skills.
Open the folder on GitHubat commit 6713fc7
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in curiositech/some_claude_skills, which our catalogue first saw on October 7, 2026.
Crisis Detection Intervention AI next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Crisis Detection Intervention AI this skillcuriositech/some_claude_skills | 244 | 2 repos | ~3.8k | Automated safety check: Pass | MIT | |
| Content Analysisliangdabiao/claude-data-analysis-ultra-main | 290 | — | ~1.7k | Automated safety check: Notes | None | |
| Azure AI Textanalytics Pymicrosoft/skills | 3.1k | 5 repos | ~2.4k | Automated safety check: Pass | MIT | |
| Trend To Product MapperMaxKmet/idea-validation-agents | 478 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Analyzing Text With NLPjeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~819 | Automated safety check: Pass | MIT | |
| Sentiment AnalysisDrchronx/ai-agent-research-starter-kit | 139 | — | ~516 | Automated safety check: Pass | Custom licence |
liangdabiao/claude-data-analysis-ultra-main
Analyze text content using both traditional NLP and LLM-enhanced methods.
microsoft/skills
Azure AI Text Analytics SDK for sentiment analysis, entity recognition, key phrases, language detection, PII, and healthcare NLP.
MaxKmet/idea-validation-agents
Maps viral social content and trending topics to concrete app opportunities by extracting the underlying problem and validating monetization fit.
jeremylongshore/tons-of-skills-marketplace
Execute this skill enables AI assistant to perform natural language processing and text analysis using the nlp-text-analyzer plugin.
Drchronx/ai-agent-research-starter-kit
Chinese sentiment analysis workflows using dictionary scoring, traditional machine learning classifiers, and LLM API calls.
asgard-ai-platform/skills
Measure and optimize customer service performance using CSAT, NPS, CES, First Contact Resolution, and text mining on support tickets.
curiositech/some_claude_skills
End-to-end form handling with react-hook-form, Zod schemas, validation patterns, error messaging, field arrays, and multi-step wizards.
curiositech/some_claude_skills
Build production CI/CD pipelines with GitHub Actions. An agent skill from curiositech/some_claude_skills.
curiositech/some_claude_skills
Expert in background job processing with Bull/BullMQ (Redis), Celery, and cloud queues.
curiositech/some_claude_skills
Strategic analyst that maps competitive landscapes, identifies white space opportunities, and provides positioning recommendations.
curiositech/some_claude_skills
Build production computer vision pipelines for object detection, tracking, and video analysis.
curiositech/some_claude_skills
Long-running design anthropologist that builds comprehensive visual databases from 500-1000 real-world examples, extracting color palettes, typography patterns, layout systems, and interaction…
Detect crisis signals in user content using NLP, mental health sentiment analysis, and safe intervention protocols. Crisis Detection Intervention AI is an agent skill from curiositech/some_claude_skills. Detect crisis signals in user content using NLP, mental health sentiment analysis, and safe intervention protocols.
Crisis Detection Intervention AI fits situations like: mental health apps; recovery platforms; support communities.
Run `npx skills add curiositech/some_claude_skills --skill crisis-detection-intervention-ai -a claude-code`. Or copy the skill folder (.claude/skills/crisis-detection-intervention-ai in curiositech/some_claude_skills) into .claude/skills/crisis-detection-intervention-ai in your project. Claude Code loads it when a task matches its description.
Run `npx skills add curiositech/some_claude_skills --skill crisis-detection-intervention-ai -a codex`. Or copy the skill folder (.claude/skills/crisis-detection-intervention-ai in curiositech/some_claude_skills) into .agents/skills/crisis-detection-intervention-ai in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add curiositech/some_claude_skills --skill crisis-detection-intervention-ai -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/crisis-detection-intervention-ai, .gemini/skills/crisis-detection-intervention-ai, .github/skills/crisis-detection-intervention-ai and .opencode/skills/crisis-detection-intervention-ai in your project.
Going by SKILL.md and its folder, Crisis Detection Intervention AI needs TypeScript for the scripts in its folder and credentials named CRISIS_DATA_KEY and ANTHROPIC_API_KEY. Our summary lists: Node.js; A credential in CRISIS_DATA_KEY. Its frontmatter pre-approves these tools: Read, Write, Edit, Bash(npm:*).
SKILL.md names 1 domain. In commands or code: 988lifeline.org; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Crisis Detection Intervention AI is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 7.7k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Crisis Detection Intervention AI: Content Analysis (liangdabiao/claude-data-analysis-ultra-main, 290 stars), Azure AI Textanalytics Py (microsoft/skills, 3.1k stars), Trend To Product Mapper (MaxKmet/idea-validation-agents, 478 stars) and Analyzing Text With NLP (jeremylongshore/tons-of-skills-marketplace, 2.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
curiositech (a GitHub organization) maintains it in curiositech/some_claude_skills, which has 244 GitHub stars. The repository holds 95 skills in this directory. The repository was last updated on September 6, 2026.
Source: curiositech/some_claude_skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.