<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>FAQ · AtomCode Docs</title>
<meta name="description" content="AtomCode FAQ — common questions about install, login, models, permissions, and more.">
<link rel="icon" type="image/png" href="https://cdn-static.gitcode.host/static/images/logo-favicon.png">
<link rel="stylesheet" href="../docs.css">
<script>(function(){try{var s=localStorage.getItem('atomcode_theme')||localStorage.getItem('atomcode-theme');if(s==='light'){document.documentElement.classList.add('light');document.documentElement.setAttribute('data-theme','light')}}catch(e){}})();</script>
</head>
<body data-page="faq">
<header class="dhdr" id="dhdr">
<a class="dhdr-logo" href="../../index.html">
<img src="https://cdn-news.gitcode.com/news/atomcode-icon1.png" alt="AtomCode">
<span>AtomCode</span>
<span class="dhdr-badge" data-i18n="badge.docs">DOCS</span>
<span class="dhdr-ver">v4.24.2</span>
</a>
<div class="dhdr-right">
<button class="search-trigger" data-open-search data-i18n-aria="aria.search" aria-label="搜索文档">
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><circle cx="11" cy="11" r="7"/><path d="M21 21l-4.3-4.3"/></svg>
<span data-i18n="search.trigger.text">搜索文档…</span>
<span class="kbd">⌘K</span>
</button>
<button class="icon-btn" id="themeBtn" data-i18n-aria="aria.theme" aria-label="切换主题"></button>
<button class="icon-btn" id="langBtn" data-i18n-aria="aria.lang" aria-label="切换语言">中</button>
<a class="dhdr-link" href="https://atomgit.com/atomgit_atomcode/atomcode" target="_blank" rel="noopener" data-i18n="hdr.repo">仓库 →</a>
<button class="icon-btn sb-toggle" id="sbToggle" data-i18n-aria="aria.sidebar" aria-label="目录">☰</button>
</div>
</header>
<div class="dlayout">
<aside class="dside" id="dside">
<div class="dside-group">
<div class="dside-group-t" data-i18n="side.g.overview">概览</div>
<a class="dside-link" href="./index.html" data-slug="index" data-i18n="side.index">文档首页</a>
</div>
<div class="dside-group">
<div class="dside-group-t" data-i18n="side.g.start">开始</div>
<a class="dside-link" href="./getting-started.html" data-slug="getting-started" data-i18n="side.getting-started">快速开始</a>
<a class="dside-link" href="./login.html" data-slug="login" data-i18n="side.login">登录方式</a>
<a class="dside-link" href="./configuration.html" data-slug="configuration" data-i18n="side.configuration">配置文件</a>
</div>
<div class="dside-group">
<div class="dside-group-t" data-i18n="side.g.usage">使用</div>
<a class="dside-link" href="./basic-usage.html" data-slug="basic-usage" data-i18n="side.basic-usage">基本使用</a>
<a class="dside-link" href="./slash-commands.html" data-slug="slash-commands" data-i18n="side.slash-commands">斜杠命令</a>
<a class="dside-link" href="./keybindings.html" data-slug="keybindings" data-i18n="side.keybindings">快捷键</a>
<a class="dside-link" href="./sessions.html" data-slug="sessions" data-i18n="side.sessions">会话与撤销</a>
</div>
<div class="dside-group">
<div class="dside-group-t" data-i18n="side.g.advanced">进阶</div>
<a class="dside-link" href="./tools.html" data-slug="tools" data-i18n="side.tools">内置工具</a>
<a class="dside-link" href="./skills.html" data-slug="skills" data-i18n="side.skills">Skills 扩展</a>
<a class="dside-link" href="./mcp.html" data-slug="mcp" data-i18n="side.mcp">MCP 集成</a>
<a class="dside-link" href="./plugins.html" data-slug="plugins" data-i18n="side.plugins">Plugin 系统</a>
<a class="dside-link" href="./memory.html" data-slug="memory" data-i18n="side.memory">永久记忆</a>
<a class="dside-link" href="./project-instructions.html" data-slug="project-instructions" data-i18n="side.project-instructions">项目指令文件</a>
<a class="dside-link" href="./webui.html" data-slug="webui" data-i18n="side.webui">WebUI 界面</a>
<a class="dside-link" href="./webui-remote-access.html" data-slug="webui-remote-access" data-i18n="side.webui-remote-access">远程访问指南</a>
</div>
<div class="dside-group">
<div class="dside-group-t" data-i18n="side.g.ops">问题</div>
<a class="dside-link" href="./faq.html" data-slug="faq" data-i18n="side.faq">常见问题</a>
</div>
</aside>
<main class="dmain prose-docs">
<h1>FAQ</h1>
<p class="lede">A roundup of questions that keep coming up in user channels and issues. If yours isn't here, run <code>/issue</code> from inside AtomCode to file one, or open it on the <a href="https://atomgit.com/atomgit_atomcode/atomcode" target="_blank">AtomGit repository</a>.</p>
<h2>Install & launch</h2>
<h3>The install script fails or times out</h3>
<p>The one-click installer pulls the binary from GitCode releases by default. If the network blocks it:</p>
<ul>
<li>Download the archive for your platform manually from the <a href="https://atomgit.com/atomgit_atomcode/atomcode/releases" target="_blank">releases page</a> and drop <code>atomcode</code> onto your <code>PATH</code>;</li>
<li>or build from source: <code>cargo install --path crates/atomcode</code> (requires Rust 1.80+).</li>
</ul>
<h3>Running <code>atomcode</code> says "command not found"</h3>
<p>The install directory isn't on your <code>PATH</code>. The default location is <code>~/.atomcode/bin</code> — add it to your shell rc file:</p>
<pre><code>export PATH="$HOME/.atomcode/bin:$PATH"</code></pre>
<h3>macOS says "cannot be opened because the developer cannot be verified"</h3>
<p>Either click "Open Anyway" under System Settings → Privacy & Security, or run:</p>
<pre><code>xattr -d com.apple.quarantine $(which atomcode)</code></pre>
<h2>Login & models</h2>
<h3>The browser doesn't open during OAuth login</h3>
<p>Check whether you're on a remote server without a desktop session. For remote environments, prefer API-key login (see <a href="./login.html">Login Methods</a>), or finish OAuth locally and copy <code>~/.atomcode/auth.json</code> to the same path on the server.</p>
<h3>Can't reach the model / hangs forever / timeouts</h3>
<ul>
<li>First check that <code>base_url</code> in <code>~/.atomcode/config.toml</code> is reachable — <code>curl</code> the matching <code>/v1/models</code> endpoint;</li>
<li>On corporate networks it's usually a proxy issue — set <code>HTTPS_PROXY</code> and retry;</li>
<li>If you're in mainland China hitting an overseas model, verify your egress network. You can run <code>/model</code> to switch to AtomGit's official channel first to prove the whole pipeline works.</li>
</ul>
<h3>How do I switch models?</h3>
<p>Inside a session, just type <code>/model</code> and pick from the menu. To persist the choice, edit the <code>model</code> field in <code>~/.atomcode/config.toml</code>. See <a href="./configuration.html">Configuration</a>.</p>
<h3>Context overflow / "context length exceeded"</h3>
<ul>
<li>Run <code>/compact</code> to have the model summarise the conversation so far and keep going;</li>
<li>or <code>/clear</code> to wipe the current context and start over (history is kept as a session — you can <code>/resume</code> at any time);</li>
<li>Avoid pasting a whole giant file into a prompt; let AtomCode use its file tools to read what it needs.</li>
</ul>
<h2>Permissions & safety</h2>
<h3>Confirming every command gets annoying</h3>
<p>That's the default safety policy. You can:</p>
<ul>
<li>Allow ad-hoc: pick "Always allow this kind of action" in the confirmation prompt;</li>
<li>Allow via config: add commands to the <code>[permissions]</code> allowlist in <code>config.toml</code>.</li>
</ul>
<h3>Where does AtomCode send my code?</h3>
<p>Only to the model endpoint you've configured in <code>config.toml</code>. Project files are read locally by tools and shipped as part of the prompt; AtomCode itself does not upload or telemeter code content.</p>
<h3>Can I disable specific tools?</h3>
<p>Yes — under <code>[tools]</code> in <code>config.toml</code>, set <code>disabled = ["shell", "web_fetch"]</code> to block tools you don't want the model to use.</p>
<h2>Usage & interaction</h2>
<h3>How do I point it at a specific file?</h3>
<p>Type <code>@</code> in the input to trigger file completion, e.g. <code>walk me through @src/main.rs entry logic</code>. You can also just describe the path and the tool will call <code>read_file</code> on its own.</p>
<h3>How do I enter a multiline prompt?</h3>
<p><kbd>Shift</kbd>+<kbd>Enter</kbd>, <kbd>Alt</kbd>+<kbd>Enter</kbd>, or <kbd>Ctrl</kbd>+<kbd>Enter</kbd> insert a newline; <kbd>Enter</kbd> sends. Full reference at <a href="./keybindings.html">Keybindings</a>.</p>
<h3>How do I roll back a bad edit?</h3>
<p>Run <code>/undo</code> to revert the file changes produced by the last tool turn. See <a href="./sessions.html">Sessions & Undo</a>.</p>
<h3>Can I resume the previous session?</h3>
<p>Yes. Launch with <code>--continue</code> (or <code>-c</code>) to pick up the last session, or run <code>/resume</code> from inside a new session and pick one from the history list.</p>
<h2>Skills & project instructions</h2>
<h3>My skill doesn't show up in the menu</h3>
<ul>
<li>Check the path: globally <code>~/.atomcode/skills/<name>/SKILL.md</code>, per-project <code>.atomcode/skills/<name>/SKILL.md</code>;</li>
<li>Check the frontmatter: both <code>name</code> and <code>description</code> are required;</li>
<li>Restart atomcode or run <code>/reload</code> to rescan.</li>
</ul>
<h3>What's the difference between <code>.atomcode.md</code> and a skill?</h3>
<p>The former is an "always on" project-level convention; the latter is an explicitly invoked workflow. See <a href="./skills.html#与项目指令的分工">Skills · Versus project instructions</a>.</p>
<h2>Troubleshooting</h2>
<div class="callout callout-tip">
<strong>Logs first</strong>
<p>For any problem, step one is to look at <code>~/.atomcode/logs/</code>. Launching with <code>--log-level debug</code> prints far more detailed request/response logs.</p>
</div>
<h3>When filing an issue, please include</h3>
<ul>
<li>The output of <code>atomcode --version</code>;</li>
<li>Your OS and architecture;</li>
<li>Minimal repro steps for the error;</li>
<li>Relevant logs (redact your API key).</li>
</ul>
<h2>Next steps</h2>
<ul>
<li><a href="./index.html">Back to overview</a></li>
<li><a href="./getting-started.html">Quickstart</a> — install from scratch</li>
<li><a href="./configuration.html">Configuration</a> — every adjustable option</li>
</ul>
<footer class="dftr">
<span data-i18n="ftr.copy">© 2026 AtomCode · MIT</span>
<a href="https://atomgit.com/atomgit_atomcode/atomcode/issues" target="_blank" rel="noopener" data-i18n="ftr.issue">报告问题</a>
</footer>
</main>
</div>
<div class="search-modal" id="searchModal" role="dialog" data-i18n-aria="aria.search" aria-label="搜索文档">
<div class="search-modal-bg"></div>
<div class="search-modal-box">
<div class="search-input-wrap">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><circle cx="11" cy="11" r="7"/><path d="M21 21l-4.3-4.3"/></svg>
<input id="searchInput" type="search" data-i18n-placeholder="search.placeholder" placeholder="搜索文档…" autocomplete="off">
<span class="search-esc">ESC</span>
</div>
<div class="search-results" id="searchResults"></div>
</div>
</div>
<script src="../docs.js"></script>
</body>
</html>