Initial commit: Velum Raycast extension

Pseudonymize-and-AI workflow for handling PII-sensitive text via the
Velum API and Raycast AI. Commands cover end-to-end email summary and
reply, briefing/action-items/structured-data extraction, manual
pseudonymize/depseudonymize on selection or clipboard, and session
management. Includes Raycast 2.0 Beta workarounds for selection capture
and rich-text clipboard.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
muena
2026-05-20 06:46:42 +02:00
commit 1843479884
31 changed files with 7855 additions and 0 deletions

22
src/ai.ts Normal file
View File

@@ -0,0 +1,22 @@
export type Creativity = "none" | "low" | "medium" | "high";
export const CREATIVITY_OPTIONS: Creativity[] = [
"none",
"low",
"medium",
"high",
];
export const MODEL_OPTIONS: Array<{ value: string; title: string }> = [
{ value: "anthropic-claude-sonnet-4-6", title: "Claude 4.6 Sonnet" },
{ value: "anthropic-claude-opus-4-7", title: "Claude 4.7 Opus" },
{ value: "anthropic-claude-4-5-haiku", title: "Claude 4.5 Haiku" },
{ value: "openai-gpt-5.3-instant", title: "OpenAI GPT-5.3 Instant" },
{ value: "openai-gpt-4.1", title: "OpenAI GPT-4.1" },
{ value: "openai-gpt-4o-mini", title: "OpenAI GPT-4o mini" },
];
export const STRICT_PLACEHOLDER_RULE = [
"STRENGE REGEL: Gib jeden Platzhalter zeichengetreu (inklusive spitzer Klammern, Großbuchstaben und Unterstrich + Nummer) zurück.",
"Du darfst Platzhalter NIEMALS auflösen, raten, übersetzen oder mit erfundenen Namen ersetzen. Schreibe sie exakt so, wie sie in der Eingabe stehen.",
].join("\n");