사람함께에이전트▾
사람 — 직접 정하고 책임지는 비즈니스 규칙과 흐름. 직접 읽어보세요.
함께 — 개념은 알아두고, 세부 규칙은 에이전트가 따릅니다.
에이전트 — 에이전트가 따르는 규칙과 레퍼런스. 필요할 때 찾아보세요.





open 쌍, _overrides.tsx 슬롯 열두 개, card 툴, @ 메뉴, 대기열, 대화 보관)는 Agent Chat에서 다룹니다.attach는 파서나 업로드가 필요한 파일에만 씁니다.attachLimits로 올립니다.@libs/util/webkit에 있고 브라우저 내장 인식과 합성을 씁니다. Android·iOS 앱의 WebView에는 둘 다 없고 @akanjs/native에는 아직 음성 플러그인이 없으므로, 앱에서는 채팅에 마이크가 그려지지 않습니다.

onClick에 연결할 callable을 돌려줍니다.section으로 넘기면 됩니다.images: true를 주면 주소까지 붙습니다. 갤러리 하나가 썸네일마다 긴 URL이 되므로 기본값은 꺼짐입니다.{ agent: false }로 막지 않는 한 표면에 오릅니다. 라우팅, 호출자의 자격증명, UI operation 같은 base 스토어 배관은 막혀 있습니다. base 키를 읽히고 싶다면 ThemeToggle이 theme에 하듯 평범하게 읽으면 됩니다.field.visual은 저장, 검색, 폼, 화면 렌더는 그대로 두고 모든 에이전트 읽기와 MCP 결과에서만 벗겨냅니다. 비밀이 아니라 비용의 문제라, 그 때문에 거절되는 것은 없습니다..exec은 턴을 그만큼 늘릴 뿐이고, 뒤따르는 변경 보고가 결과를 실어 옵니다. 두 번째 호출이 필요 없습니다.maxTurns 예산을 몇 초 만에 태웁니다. desc에 그 사실을 적으세요.AgentAbort.current(AgentProgress와 같은 모듈 슬롯)에서 읽습니다. 존중하는 것은 선택이며, 얻는 것은 툴 자신의 정리입니다. 둘 다 use-agentic이 아니라 akanjs/store에서 가져옵니다.page().prompt()로 공개하며, MCP 클라이언트에 prompt로 전달됩니다.
compact.at을 넘을 때로, 턴마다 드는 비용의 상한입니다. 다른 하나는 프롬프트가 서버가 알려 준 컨텍스트 창에 가까워질 때입니다. 그러면 마지막 keep개 위의 히스토리가 요약 하나로 바뀝니다. 프로바이더는 너무 긴 요청에 짧은 답이 아니라 거절로 답합니다.option.setLlm({ contextWindow })로 창 크기를 알려 줍니다. 가드는 그 아래로 답변 한도와 13k 버퍼를 비워 두고, 직전 턴에 프로바이더가 직접 센 토큰 수로 잽니다. 그래서 글자 수 추정이 작게 보는 한국어 대화도 놓치지 않습니다. 그래도 거절되면 압축한 뒤 같은 턴을 한 번 더 보내고, 거절 문구에서 창 크기를 알아 둡니다.compact={{ at, keep, buffer }}로 정하고, { at: Infinity }이면 창 가드만 남기며, { at: 0 }이면 전부 끕니다. /compact로 언제든 남기는 것 없이 실행합니다.
readScreen은 zone 경계에서 멈춥니다.field.visual이고, 비밀이 아니라 비용의 문제입니다.readScreen({ section })으로 컨테이너 하나만 읽는 편이 영역 다섯 개를 빼는 것보다 낫습니다. 푸터는 문서 맨 끝이라 긴 페이지에서는 이미 잘린 뒤에 있으니, 표시할 만한 영역은 본문 위쪽에 있는 것들입니다.use<MyLlmOption>()로 자기 설정을 읽습니다.