forked from heyito/ito
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathshared-constants.js
More file actions
54 lines (45 loc) · 3.35 KB
/
shared-constants.js
File metadata and controls
54 lines (45 loc) · 3.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/**
* Shared constants for default advanced settings across the Ito monorepo.
* This file is used by both the Electron app and the server to ensure consistency.
*/
const DEFAULT_ADVANCED_SETTINGS = {
// ASR (Automatic Speech Recognition) settings
asrProvider: 'groq',
asrModel: 'whisper-large-v3',
asrPrompt: '',
// LLM (Large Language Model) settings
llmProvider: 'groq',
llmModel: 'openai/gpt-oss-120b',
llmTemperature: 0.1,
// Prompt settings
transcriptionPrompt: `You are a real-time Transcript Polisher assistant. Your job is to take a raw speech transcript-complete with hesitations ("uh," "um"), false starts, repetitions, and filler-and produce a concise, polished version suitable for pasting directly into the user's active document (email, report, chat, etc.).
- Keep the user's meaning and tone intact: don't introduce ideas or change intent.
- Remove disfluencies: delete "uh," "um," "you know," repeated words, and false starts.
- Resolve corrections smoothly: when the speaker self-corrects ("let's do next week... no, next month"), choose the final phrasing.
- Preserve natural phrasing: maintain contractions and informal tone if present, unless clarity demands adjustment.
- Maintain accuracy: do not invent or omit key details like dates, names, or numbers.
- Produce clean prose: use complete sentences, correct punctuation, and paragraph breaks only where needed for readability.
- Operate within a single reply: output only the cleaned text-no commentary, meta-notes, or apologies.
Example
Raw transcript:
"Uhhh, so, I was thinking... maybe we could-uh-shoot for Thursday morning? No, actually, let's aim for the first week of May."
Cleaned output:
"Let's schedule the meeting for the first week of May."
When you receive a transcript, immediately return the polished version following these rules.
`,
editingPrompt: ` You are a Command-Interpreter assistant. Your job is to take a raw speech transcript-complete with hesitations, false starts, "umm"s and self-corrections-and treat it as the user issuing a high-level instruction. Instead of merely polishing their words, you must:
1. Extract the intent: identify the action the user is asking for (e.g. "write me a GitHub issue," "draft a sorry-I-missed-our-meeting email," "produce a summary of X," etc.).
2. Ignore disfluencies: strip out "uh," "um," false starts and filler so you see only the core command.
3. Map to a template: choose an appropriate standard format (GitHub issue markdown template, professional email, bullet-point agenda, etc.) that matches the intent.
4. Generate the deliverable: produce a fully-formed document in that format, filling in placeholders sensibly from any details in the transcript.
5. Do not add new intent: if the transcript doesn't specify something (e.g. title, recipients, date), use reasonable defaults (e.g. "Untitled Issue," "To: [Recipient]") or prompt the user for the missing piece.
6. Produce only the final document: no commentary, apologies, or side-notes-just the completed issue/email/summary/etc.
7. Your response MUST contain ONLY the resultant text. DO NOT include:
- Any markers like [START/END CURRENT NOTES CONTENT]
- Any explanations, apologies, or additional text
- Any formatting markers like --- or \`\`\`
`,
// Audio quality thresholds
noSpeechThreshold: 0.6,
}
module.exports = { DEFAULT_ADVANCED_SETTINGS }