"Also remove its graph traces":"Also remove its graph traces",
"This session’s topics, links, and events leave the graph too. Topics other sessions or imported notes also cover survive; topics only this session created are removed entirely.":"This session’s topics, links, and events leave the graph too. Topics other sessions or imported notes also cover survive; topics only this session created are removed entirely.",
"Delete session":"Delete session",
"Delete session?":"Delete session?",
"This permanently removes the session — its messages, background jobs, and extraction records. Everything it added to the graph stays unless you check below. This cannot be undone.":"This permanently removes the session — its messages, background jobs, and extraction records. Everything it added to the graph stays unless you check below. This cannot be undone.",
"Dictation needs a Deepgram key":"Dictation needs a Deepgram key",
"Import notes into the graph":"Import notes into the graph",
"Importing…":"Importing…",
"Import notes…":"Import notes…",
"Knowledge graph":"Knowledge graph",
"Start a session or import notes to build your graph.":"Start a session or import notes to build your graph.",
"Sessions":"Sessions",
"No sessions recorded.":"No sessions recorded.",
"What do you want to practice?":"What do you want to practice?",
"What do you want to learn?":"What do you want to learn?",
"Start session":"Start session",
"Teach":"Teach",
"A teacher agent with a memory — sessions, quizzes, and a knowledge graph of what you know.":"A teacher agent with a memory — sessions, quizzes, and a knowledge graph of what you know.",
"Could not load language settings":"Could not load language settings",
"Could not save language settings":"Could not save language settings",
"Could not reach the server — try again.":"Could not reach the server — try again.",
"Model selector":"Model selector",
"No models — add a provider key in Keys":"No models — add a provider key in Keys",
"This session's model":"This session's model",
"Strong tier — the default for new sessions":"Strong tier — the default for new sessions",
"{v0} has no thinking levels.":"{v0} has no thinking levels.",
"Pick a model first.":"Pick a model first.",
"Loading…":"Loading…",
"Levels this model actually supports":"Levels this model actually supports",
"New practice session":"New practice session",
"Pick nodes from your knowledge graph, describe what you want to practice, or bring your own problem.":"Pick nodes from your knowledge graph, describe what you want to practice, or bring your own problem.",
"Invalid import response. Please retry the file.":"Invalid import response. Please retry the file.",
"Import request failed (HTTP {v0}){v1}. Please retry the file.":"Import request failed (HTTP {v0}){v1}. Please retry the file.",
"Probing":"Probing",
"Planning":"Planning",
"Teaching":"Teaching",
"Plan · {v0} node{v1}":"Plan · {v0} node{v1}",
"Plan diagram":"Plan diagram",
"The full plan":"The full plan",
"The plan":"The plan",
"live — statuses derive from your check outcomes":"live — statuses derive from your check outcomes",
"Close":"Close",
"Drag to pan · scroll to zoom":"Drag to pan · scroll to zoom",
"Zoom out":"Zoom out",
"Fit plan to screen":"Fit plan to screen",
"Zoom in":"Zoom in",
"No plan in this session yet.":"No plan in this session yet.",
"Problem":"Problem",
"Solved":"Solved",
"Solved with hints":"Solved with hints",
"Moved on":"Moved on",
"Surrendered":"Surrendered",
"Dismissed":"Dismissed",
"Problem dismissed.":"Problem dismissed.",
"Concluded":"Concluded",
"Model solution":"Model solution",
"Metadata":"Metadata",
"Mode":"Mode",
"Targets":"Targets",
"Outcome":"Outcome",
"Hint rung":"Hint rung",
"Miss class":"Miss class",
"Retest":"Retest",
"Work here, think out loud.":"Work here, think out loud.",
"This question arrived malformed — the transcript keeps the retry.":"This question arrived malformed — the transcript keeps the retry.",
"Check your understanding":"Check your understanding",
"Open":"Open",
"Answer":"Answer",
"I don't know":"I don't know",
"Type your own answer…":"Type your own answer…",
"Confidence":"Confidence",
"Confidence — the probability your selected answer is correct":"Confidence — the probability your selected answer is correct",
"{v0} percent":"{v0} percent",
"The probability your selected answer is correct — 50% is a coin flip. Adjust with ←/→.":"The probability your selected answer is correct — 50% is a coin flip. Adjust with ←/→.",
"Your answer":"Your answer",
"Type your answer…":"Type your answer…",
"Why this answer? Whatever comes to mind.":"Why this answer? Whatever comes to mind.",
"Submit answer":"Submit answer",
"Thinking while reading":"Thinking while reading",
"Whatever comes to mind as you read.":"Whatever comes to mind as you read.",
"Aborted":"Aborted",
"The turn stream body is empty.":"The turn stream body is empty.",
"A turn is already running — try again in a moment.":"A turn is already running — try again in a moment.",
"The dismissal failed ({v0}).":"The dismissal failed ({v0}).",
"Session Find":"Session Find",
"Find in session":"Find in session",
"Find in session…":"Find in session…",
"Previous match":"Previous match",
"Previous match (Shift+Enter)":"Previous match (Shift+Enter)",
"Next match":"Next match",
"Next match (Enter)":"Next match (Enter)",
"Close Find":"Close Find",
"Close Find (Esc)":"Close Find (Esc)",
"Diagram focus":"Diagram focus",
"Diagram":"Diagram",
"from this lesson":"from this lesson",
"Fit diagram to view":"Fit diagram to view",
"Rendering diagram…":"Rendering diagram…",
"Strong":"Strong",
"The main model for your sessions":"The main model for your sessions",
"Cheap":"Cheap",
"The assistants that research, build demos, and grade your work":"The assistants that research, build demos, and grade your work",
"Vision":"Vision",
"The assistants that draw and read PDFs":"The assistants that draw and read PDFs",
"Your version is in use":"Your version is in use",
"Teacher":"Teacher",
"Prober":"Prober",
"Shared":"Shared",
"Used by both agents":"Used by both agents",
"Catalog unavailable":"Catalog unavailable",
"Save failed: {v0}":"Save failed: {v0}",
"Saved":"Saved",
"Delete failed: {v0}":"Delete failed: {v0}",
"Deleted":"Deleted",
"✓ key":"✓ key",
"· no key":"· no key",
"prompt {v0}":"prompt {v0}",
"Hide text":"Hide text",
"Show text":"Show text",
"Source":"Source",
"The original instructions":"The original instructions",
"Override":"Override",
"Your version of the instructions":"Your version of the instructions",
"Add your own instructions…":"Add your own instructions…",
"Save":"Save",
"Models":"Models",
"{v0} model":"{v0} model",
"{v0} thinking":"{v0} thinking",
"Runs every agent of this tier":"Runs every agent of this tier",
"Tools":"Tools",
"Graph tools":"Graph tools",
"Lets the tutor consult your knowledge map between sessions":"Lets the tutor consult your knowledge map between sessions",
"Graph is disabled":"Graph is disabled",
"graph tools":"graph tools",
"Quizzing":"Quizzing",
"How both tutors check your understanding":"How both tutors check your understanding",
"LearnHarness stores your ChatGPT account details and credentials in an unencrypted local file on this device. When this connection is used, relevant conversation context, learning material, and tool results are sent directly to OpenAI. ChatGPT plan limits apply; any additional credits are authorized and managed in ChatGPT, not LearnHarness.":"LearnHarness stores your ChatGPT account details and credentials in an unencrypted local file on this device. When this connection is used, relevant conversation context, learning material, and tool results are sent directly to OpenAI. ChatGPT plan limits apply; any additional credits are authorized and managed in ChatGPT, not LearnHarness.",
"Background work counts toward your ChatGPT plan usage.":"Background work counts toward your ChatGPT plan usage.",
"Allow background use for all ChatGPT accounts":"Allow background use for all ChatGPT accounts",
"Account disconnected locally. Remote revocation could not be confirmed.":"Account disconnected locally. Remote revocation could not be confirmed.",
"Disconnect account?":"Disconnect account?",
"This removes the saved account and its credentials from this device.":"This removes the saved account and its credentials from this device.",
"The ChatGPT connection could not be changed. Try again.":"The ChatGPT connection could not be changed. Try again.",
"The desktop connection is unavailable. Retry when the app is ready.":"The desktop connection is unavailable. Retry when the app is ready.",
"Disconnect account":"Disconnect account",
"Saved ChatGPT account":"Saved ChatGPT account",
"Add another account or workspace":"Add another account or workspace",
"Manage…":"Manage…",
"OpenAI privacy":"OpenAI privacy",
"Manage usage":"Manage usage",
"ChatGPT sign-in is available only in the desktop app. API-key connections remain available here.":"ChatGPT sign-in is available only in the desktop app. API-key connections remain available here.",
"Waiting for browser sign-in…":"Waiting for browser sign-in…",
"USD per 1M tokens in/out":"USD per 1M tokens in/out",
"{v0} (subscription)":"{v0} (subscription)",
"Search providers…":"Search providers…",
"No providers match.":"No providers match.",
"Search fonts…":"Search fonts…",
"Loading fonts…":"Loading fonts…",
"Use “":"Use “",
"Providers":"Providers",
"Agent":"Agent",
"Appearance":"Appearance",
"Keyboard":"Keyboard",
"Stored on this device":"Stored on this device",
"General":"General",
"Automatic updates arrive in an upcoming release":"Automatic updates arrive in an upcoming release",
"status {v0}":"status {v0}",
"Settings":"Settings",
"Close settings":"Close settings",
"Settings sections":"Settings sections",
"Loading settings…":"Loading settings…",
"Settings could not be loaded — refresh to retry.":"Settings could not be loaded — refresh to retry.",
"Auto-update":"Auto-update",
"auto update":"auto update",
"Pi's native Copilot sign-in may enable additional models whose policy is not yet configured. Models explicitly disabled by policy are not enabled. Organization restrictions still apply.":"Pi's native Copilot sign-in may enable additional models whose policy is not yet configured. Models explicitly disabled by policy are not enabled. Organization restrictions still apply.",
"Allow LearnHarness helper agents and automatic follow-ups to use this connection.":"Allow LearnHarness helper agents and automatic follow-ups to use this connection.",
"Your prompts, tool results, and relevant session context are sent to {v0} to run the work you select. Credentials are stored locally in an owner-only plaintext file. Provider terms, data-use policies, and plan limits apply. This connection never falls back to an API key.":"Your prompts, tool results, and relevant session context are sent to {v0} to run the work you select. Credentials are stored locally in an owner-only plaintext file. Provider terms, data-use policies, and plan limits apply. This connection never falls back to an API key.",
"Disconnect {v0} from LearnHarness? This stops work using this connection and removes its saved credentials from this device. It does not cancel your subscription or revoke access at the provider. Saved model choices will remain unavailable until you reconnect or change them.":"Disconnect {v0} from LearnHarness? This stops work using this connection and removes its saved credentials from this device. It does not cancel your subscription or revoke access at the provider. Saved model choices will remain unavailable until you reconnect or change them.",
"The connection could not be changed. Try again.":"The connection could not be changed. Try again.",
"Sign-in did not complete. Try connecting again.":"Sign-in did not complete. Try connecting again.",
"{v0} connection":"{v0} connection",
"Allow background use":"Allow background use",
"Subscription sign-in requires the desktop app's private server connection. API-key connections remain available here.":"Subscription sign-in requires the desktop app's private server connection. API-key connections remain available here.",
"Device code:":"Device code:",
"The browser could not be opened. Try again.":"The browser could not be opened. Try again.",
"Visual maker + PDF reader":"Visual maker + PDF reader",
"Choose your AI provider and paste its API key. You’ll pick your models next.":"Choose your AI provider and paste its API key. You’ll pick your models next.",
"Provider":"Provider",
"Pick a provider…":"Pick a provider…",
"Saving…":"Saving…",
"Save key":"Save key",
"Save failed. Check your connection and try again.":"Save failed. Check your connection and try again.",
"Close setup":"Close setup",
"Model catalog could not be loaded. Check the connection and retry.":"Model catalog could not be loaded. Check the connection and retry.",
"Pick the model for each tier. All three are required before chats can start.":"Pick the model for each tier. All three are required before chats can start.",
"Pick a model…":"Pick a model…",
"No image-capable models. Add a provider key with access to a vision model.":"No image-capable models. Add a provider key with access to a vision model.",
"Speech-to-text key for dictation — needs ≥ Member permission in the Deepgram console to mint tokens.":"Speech-to-text key for dictation — needs ≥ Member permission in the Deepgram console to mint tokens.",
"Web-search engine for the researcher sub-agent (AI-native search API). Setting the key activates it — no engine toggle needed.":"Web-search engine for the researcher sub-agent (AI-native search API). Setting the key activates it — no engine toggle needed.",
"Web-search engine for the researcher sub-agent — the alternative to Tavily. Setting the key activates it.":"Web-search engine for the researcher sub-agent — the alternative to Tavily. Setting the key activates it.",
"{v0} must be at least {v1} characters with no whitespace":"{v0} must be at least {v1} characters with no whitespace",
"{v0} must start with \"tvly-\" (Tavily's key format)":"{v0} must start with \"tvly-\" (Tavily's key format)",
"Download diagram as SVG":"Download diagram as SVG",
"Download diagram as PNG":"Download diagram as PNG",
"Download diagram as MMD":"Download diagram as MMD",
"View fullscreen":"View fullscreen",
"Exit fullscreen":"Exit fullscreen",
"Copy table as Markdown":"Copy table as Markdown",
"Copy table as CSV":"Copy table as CSV",
"Copy table as TSV":"Copy table as TSV",
"Download table":"Download table",
"Download table as CSV":"Download table as CSV",
"Download table as Markdown":"Download table as Markdown",
"Image not available":"Image not available",
"Download image":"Download image",
"Open external link?":"Open external link?",
"You're about to visit an external website.":"You're about to visit an external website.",
"Copy link":"Copy link",
"Open link":"Open link",
"Other":"Other",
"Light":"Light",
"delivered":"delivered",
"No such session":"No such session",
"A turn is running in this session — try again when it finishes":"A turn is running in this session — try again when it finishes",
"Background jobs are still running in this session — try again when they finish":"Background jobs are still running in this session — try again when they finish",
"The session's extraction is still winding down — try again in a moment":"The session's extraction is still winding down — try again in a moment",
"Not found":"Not found",
"title must be a non-empty string":"title must be a non-empty string",
"unknown key \"{v0}\"":"unknown key \"{v0}\"",
"body must be JSON":"body must be JSON",
"body must be {value: string}":"body must be {value: string}",
"model must be {provider, id}":"model must be {provider, id}",
"thinkingLevel must be a string":"thinkingLevel must be a string",
"autoUpdate must be a boolean":"autoUpdate must be a boolean",
"{v0} must be \"en\" or \"ru\"":"{v0} must be \"en\" or \"ru\"",
"{v0} must be an object":"{v0} must be an object",
"{v0}.model must be {provider, id}":"{v0}.model must be {provider, id}",
"{v0}.thinkingLevel must be a string":"{v0}.thinkingLevel must be a string",
"{v0}.{v1} must be a boolean":"{v0}.{v1} must be a boolean",
"models must be an object":"models must be an object",
"unknown role \"{v0}\" (supported: {v1})":"unknown role \"{v0}\" (supported: {v1})",
"search must be an object":"search must be an object",
"search.engine must be \"tavily\" or \"brave\"":"search.engine must be \"tavily\" or \"brave\"",
"graphTools must be an object":"graphTools must be an object",
"graphTools.enabled must be a boolean":"graphTools.enabled must be a boolean",
"{v0} must be a #hex color or null":"{v0} must be a #hex color or null",
"mode must be \"dark\" or \"light\"":"mode must be \"dark\" or \"light\"",
"fontFamily must be a non-empty string or null":"fontFamily must be a non-empty string or null",
"proseFontSize must be an integer between 12 and 24":"proseFontSize must be an integer between 12 and 24",
"sessionNameSerif must be a boolean":"sessionNameSerif must be a boolean",
"mdRendering must be an object":"mdRendering must be an object",
"mdRendering.headingWeight must be an integer between 100 and 900":"mdRendering.headingWeight must be an integer between 100 and 900",
"enabled must be a boolean":"enabled must be a boolean",
"rendering must be a boolean":"rendering must be a boolean",
"extractionChunkTokens must be a number":"extractionChunkTokens must be a number",
"extractionChunkTokens must be at least {v0} (smaller batches waste the per-run graph overhead)":"extractionChunkTokens must be at least {v0} (smaller batches waste the per-run graph overhead)",
"slot \"{v0}\" must set a model (thinkingLevel alone cannot run — absent slot = unset)":"slot \"{v0}\" must set a model (thinkingLevel alone cannot run — absent slot = unset)",
"thresholdTokens must be a number":"thresholdTokens must be a number",
"thresholdTokens must be at least {v0} (compaction keeps a ~20k-token recent tail — smaller budgets would churn it)":"thresholdTokens must be at least {v0} (compaction keeps a ~20k-token recent tail — smaller budgets would churn it)",
"The tool call failed.":"The tool call failed.",
"Aborted by learner":"Aborted by learner",
"starting research":"starting research",
"starting demo":"starting demo",
"starting figure":"starting figure",
"building visual":"building visual",
"render_svg: inspecting final render":"render_svg: inspecting final render",
"The demo could not be built.":"The demo could not be built.",
"The figure could not be drawn.":"The figure could not be drawn.",
"untagged":"untagged",
"yes":"yes",
"no":"no",
"none":"none",
" · select all that apply":" · select all that apply",
"recall":"recall",
"discrimination":"discrimination",
"composition":"composition",
"solved":"solved",
"solvedWithHints":"solvedWithHints",
"movedOn":"movedOn",
"surrendered":"surrendered",
"dismissed":"dismissed",
"cue":"cue",
"execution":"execution",
"careless":"careless",
"structural":"structural",
"pending":"pending",
"consent":"consent",
"proposition":"proposition",
"propositions":"propositions",
"node":"node",
"nodes":"nodes",
"chain":"chain",
"chains":"chains",
" · {v0} sources":" · {v0} sources",
"{v0}s elapsed":"{v0}s elapsed",
"{count} nodes":"{count} nodes",
"The saved connection could not be read or written safely. Reopen the app or reconnect after resolving the credential-file problem.":"The saved connection could not be read or written safely. Reopen the app or reconnect after resolving the credential-file problem.",
"The connection could not be refreshed. Retry or reconnect in Providers.":"The connection could not be refreshed. Retry or reconnect in Providers.",
"Sign-in cancelled.":"Sign-in cancelled.",
"This subscription connection is unavailable. Reconnect or explicitly choose another connection.":"This subscription connection is unavailable. Reconnect or explicitly choose another connection.",
"Background use is off for this connection. Automatic follow-up remains deferred in its queue.":"Background use is off for this connection. Automatic follow-up remains deferred in its queue.",
"The connection or model catalog changed. Select an available model and retry.":"The connection or model catalog changed. Select an available model and retry.",
"This sign-in action is no longer available.":"This sign-in action is no longer available.",
"ChatGPT credentials could not be read or saved. Check local file access, then reconnect before making requests.":"ChatGPT credentials could not be read or saved. Check local file access, then reconnect before making requests.",
"ChatGPT sign-in could not be verified. Select the intended saved account and try again.":"ChatGPT sign-in could not be verified. Select the intended saved account and try again.",
"ChatGPT plan permission is missing. Reconnect and authorize ChatGPT plan use.":"ChatGPT plan permission is missing. Reconnect and authorize ChatGPT plan use.",
"This ChatGPT connection is disconnected. Reconnect in Providers.":"This ChatGPT connection is disconnected. Reconnect in Providers.",
"ChatGPT background use is off in this app. Enable Allow background use for all ChatGPT accounts in Providers, or explicitly select an API-key model for that workload.":"ChatGPT background use is off in this app. Enable Allow background use for all ChatGPT accounts in Providers, or explicitly select an API-key model for that workload.",
"The ChatGPT account model catalog is unavailable. Retry the connection; no API-key fallback was used.":"The ChatGPT account model catalog is unavailable. Retry the connection; no API-key fallback was used.",
"The ChatGPT session expired. Reconnect in Providers.":"The ChatGPT session expired. Reconnect in Providers.",
"ChatGPT could not be reached. Check your connection and try again.":"ChatGPT could not be reached. Check your connection and try again.",
"A ChatGPT sign-in is already pending.":"A ChatGPT sign-in is already pending.",
"ChatGPT sign-in is unavailable in browser-only mode.":"ChatGPT sign-in is unavailable in browser-only mode.",
"ChatGPT sign-in failed. Try again; no API-key fallback was used.":"ChatGPT sign-in failed. Try again; no API-key fallback was used.",
"The selected model is unavailable.":"The selected model is unavailable.",
"ChatGPT plan usage limit reached. Manage usage at https://chatgpt.com/settings/usage. No API-key fallback was used.":"ChatGPT plan usage limit reached. Manage usage at https://chatgpt.com/settings/usage. No API-key fallback was used.",
"ChatGPT plan permission is missing. Reconnect in Providers and authorize plan use. No API-key fallback was used.":"ChatGPT plan permission is missing. Reconnect in Providers and authorize plan use. No API-key fallback was used.",
"Your ChatGPT session expired. Reconnect in Providers. No API-key fallback was used.":"Your ChatGPT session expired. Reconnect in Providers. No API-key fallback was used.",
"ChatGPT background use is off in this app. Enable Allow background use for all ChatGPT accounts in Providers to run this work. No API-key fallback was used.":"ChatGPT background use is off in this app. Enable Allow background use for all ChatGPT accounts in Providers to run this work. No API-key fallback was used.",
"This ChatGPT account or workspace does not permit this request. Check ChatGPT settings; reconnecting may not change eligibility.":"This ChatGPT account or workspace does not permit this request. Check ChatGPT settings; reconnecting may not change eligibility.",
"ChatGPT request cancelled or connection closed. No API-key fallback was used.":"ChatGPT request cancelled or connection closed. No API-key fallback was used.",
"The selected model is unavailable for this ChatGPT account. Refresh Providers and explicitly choose an available model. No API-key fallback was used.":"The selected model is unavailable for this ChatGPT account. Refresh Providers and explicitly choose an available model. No API-key fallback was used.",
"ChatGPT returned an incomplete response. Retry when ready; no API-key fallback was used.":"ChatGPT returned an incomplete response. Retry when ready; no API-key fallback was used.",
"ChatGPT request failed. Check your connection and ChatGPT usage, then retry. No API-key fallback was used.":"ChatGPT request failed. Check your connection and ChatGPT usage, then retry. No API-key fallback was used.",
"{v0} background use is off in this app. Enable it in Providers to run this work. No API-key fallback was used.":"{v0} background use is off in this app. Enable it in Providers to run this work. No API-key fallback was used.",
"{v0} usage limit reached. Check your provider account and try again later. No API-key fallback was used.":"{v0} usage limit reached. Check your provider account and try again later. No API-key fallback was used.",
"{v0} authorization could not be refreshed. Retry or reconnect in Providers. No API-key fallback was used.":"{v0} authorization could not be refreshed. Retry or reconnect in Providers. No API-key fallback was used.",
"{v0} request cancelled or connection closed. No API-key fallback was used.":"{v0} request cancelled or connection closed. No API-key fallback was used.",
"The selected {v0} model or connection is unavailable. Refresh Providers and explicitly choose an available model. No API-key fallback was used.":"The selected {v0} model or connection is unavailable. Refresh Providers and explicitly choose an available model. No API-key fallback was used.",
"{v0} request failed. Check the connection, account access and provider limits, then retry. No API-key fallback was used.":"{v0} request failed. Check the connection, account access and provider limits, then retry. No API-key fallback was used.",
"GitHub Enterprise URL/domain (blank for github.com)":"GitHub Enterprise URL/domain (blank for github.com)",
"Enabling models...":"Enabling models...",
"Waiting for authorization...":"Waiting for authorization...",
"no search engine configured — set a Tavily or Brave search API key":"no search engine configured — set a Tavily or Brave search API key",
"search engine is set to \"{v0}\" but its API key is missing — set the {v1} key":"search engine is set to \"{v0}\" but its API key is missing — set the {v1} key",
"Fast mode uses more ChatGPT allowance.":"Fast mode uses more ChatGPT allowance.",
"Fast mode is available only for ChatGPT models.":"Fast mode is available only for ChatGPT models.",
"Could not save model settings":"Could not save model settings",
"Fast mode is unavailable for this ChatGPT model or account. Turn off Fast mode or choose another model.":"Fast mode is unavailable for this ChatGPT model or account. Turn off Fast mode or choose another model."