본문으로 건너뛰기

Hermes Agent Docker 실행 분기와 s6-overlay 판별

Hermes Agent의 컨테이너 안내가 이미지와 PID 1 상태에 따라 갈리는 이유

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

Hermes Agent의 Docker 서비스 안내는 모든 컨테이너에 같은 메시지를 내보내는 구조가 아니라, 컨테이너 여부와 s6-overlay의 실행 상태를 순서대로 판별하는 분기 로직이다. hermes_cli/gateway.py의 dispatch는 is_container()를 확인한 뒤 detect_service_manager() 결과가 s6인지, PID 1이 s6-svscan인지, /run/s6/basedir가 있는지를 검사한다. 공식 이미지가 아니거나 진입점을 bash로 바꿨거나 오래된 이미지를 사용하면 s6 감독자가 없으므로 hermes gateway run과 재시작 정책을 안내하며, 공식 이미지의 /init이 유지된 경우에는 별도의 s6용 안내가 나온다.

𝕏 실시간 트렌드 토픽

Hermes Agent의 Docker 서비스 분기포스트 2

Hermes Agent가 Docker 환경에서 출력하는 gateway 안내가 공식 이미지 사용 여부와 s6-overlay의 PID 1 실행 상태에 따라 달라지는 구조다.

세부 내용 보기
  • Hermes Agent의 Docker 안내 문구가 사용자 환경마다 달라지는 원인은 컨테이너 내부에서 서비스 감독자가 실제로 실행 중인지 판별해야 하기 때문이다. hermes_cli/gateway.py의 dispatch는 먼저 is_container()를 확인하고 detect_service_manager()를 호출한 뒤, PID 1의 comm 값이 s6-svscan인지와 /run/s6/basedir가 존재하는지를 함께 검사한다. 이 조건이 충족되면 프로필 자동 등록과 hermes gateway start를 안내하고, 그렇지 않으면 컨테이너 안에는 설치할 서비스가 없다는 일반 경로로 넘어간다.
  • 공식 이미지가 아닌 컨테이너에 Hermes Agent를 pip로 설치했거나, docker run --entrypoint bash 또는 Kubernetes의 command 설정으로 /init을 덮어썼거나, Phase 4 s6 변경 이전의 오래된 이미지를 사용하면 s6가 PID 1로 시작되지 않는다. 이 경우 화면에 표시되는 "Service installation is not needed inside a Docker container... use restart policies... hermes gateway run" 메시지는 해당 조건에 맞는 실행 경로이며, s6 감독자 부재 때문에 서비스 설치 단계를 건너뛴다.
원문 트윗 2개 보기

Teknium

@Teknium

20일 전

You aren't using our docker image? https:// hub.docker.com/r/nousresearch /hermes-agent …

💬 1 0 1👁 158

Teknium

@Teknium

20일 전

"Because that message doesn't mean they're on our s6 image — it's the generic any-container fallback. The dispatch in hermes_cli/gateway.py (~L7591) goes: 1. is_container() true → check detect_service_manager() 2. == "s6" (PID 1 comm is s6-svscan AND /run/s6/basedir exists) → the friendly "profiles auto-register, use hermes gateway start" guidance 3. otherwise → the message in the screenshot: "Service installation is not needed inside a Docker container... use restart policies... hermes gateway run" So the user in that screenshot is in a container where s6-overlay is NOT PID 1. Three ways that happens: - Not our image at all — hermes pip-installed inside some other container. The screenshot smells like this: user box on host cursor looks like a Cursor/devcontainer-style box, not our published image. Any container with /.dockerenv hits this branch. - Our image with the entrypoint overridden (docker run --entrypoint bash, or k8s command: replacing /init) — s6 never starts, PID 1 is their shell. - An old image version predating the Phase 4 s6 overhaul. The message itself is working as designed for those cases: no supervisor exists, so install genuinely has nothing to install, and hermes gateway run + a restart policy is the correct advice. On the actual s6 image with /init intact, they'd get the other branch."

💬 0 0 0👁 156

📈 AI Research Preference Models의 후보 실행 선택포스트 1

AI Research Preference Models가 여러 연구 후보 해법을 모두 실행하지 않고도 실행 가치가 높은 후보를 예측하는 연구 설계다.

세부 내용 보기
  • 연구 후보가 여러 개일 때 모든 해법을 실제로 실행하면 계산 비용이 커지므로, AI Research Preference Models(RPMs)는 실행 전 후보의 우선순위를 예측하는 역할을 맡는다. 이 모델은 frozen pretrained language models를 task-specific training 없이 사용하며, 후보 계획·코드·이전에 실행한 해법을 입력으로 받아 어떤 후보를 먼저 실행할지 판단한다.
  • RPMs는 두 형태로 구성된다. inference-only 모델은 후보 계획과 코드, 과거 실행 결과를 추론하고, agentic 모델은 결정 전에 소규모 pilot experiment까지 실행한 뒤 후보를 고른다. 따라서 모든 후보를 완주하는 대신 계획 평가와 제한된 사전 실험을 결합해 실행 비용을 줄이는 연구 선택 절차를 만든다.
  • 게시물은 이 접근을 설명하는 논문으로 arXiv 2608.13940을 연결했지만, 정확도나 비용 절감률 같은 정량 결과는 제시하지 않았다. 현재 확인되는 근거는 두 모델 형태와 frozen pretrained language model 기반이라는 연구 설계다.
원문 트윗 1개 보기

TimescaleDB의 대규모 시계열 쿼리 최적화포스트 1

TimescaleDB가 Postgres에서 시간 기반 파티셔닝과 증분 집계를 자동화해 대규모 시계열 조회 비용을 줄이는 활용 사례다.

세부 내용 보기
  • Cloudflare의 Postgres 테이블이 수십억 행으로 커지면서 시간 범위 쿼리가 전체 테이블을 반복 스캔하는 문제가 발생했다. 수동 파티셔닝과 cron 기반 집계 갱신은 스키마 변경 때마다 로직 수정과 팀 간 조율이 필요했고, ClickHouse는 해당 쓰기 패턴을 처리하기 위한 별도 ingestion pipeline을 요구했다.
  • TimescaleDB는 timestamp 기준으로 데이터를 hypertable의 관련 chunk에 자동 분할해 시간 범위 쿼리가 전체 테이블이 아닌 필요한 구간만 읽게 한다. continuous aggregates는 백그라운드에서 증분 갱신되므로 cron 작업을 직접 유지할 필요가 없고, compression도 기본 기능으로 제공된다.
  • 게시물에 따르면 Cloudflare는 같은 데이터에서 TimescaleDB 전환 뒤 쿼리 성능이 5-35배 개선됐고, 제목에는 35배 단축 사례가 제시됐다. 작성자는 USGS의 1900년 이후 400,000건 이상의 지진 데이터를 hypertable에 넣고, 각 슬라이더 위치마다 실시간 조회를 수행하는 3D 지구본 대시보드를 Claude Code와 Tiger Cloud로 구성했다.
  • Tiger CLI의 MCP server는 Claude Code가 Tiger Cloud에 연결해 데이터베이스를 준비하고 USGS 카탈로그를 가져온 뒤 Next.js와 Three.js 프런트엔드를 조립하도록 연결한다. 게시물은 Tiger CLI가 Apache 2.0 라이선스의 오픈소스이며 Claude Code, Cursor, Codex, Gemini CLI, VS Code와 작동한다고 밝혔다.
원문 트윗 1개 보기

Avi Chawla

@_avichawla

20일 전

How Cloudflare cut query times by 35x without leaving Postgres: Their Postgres tables hit billions of rows, and every time-range query started getting slower. Plain Postgres scans the entire table on every query, regardless of the time window. They tried the manual route by building precomputed aggregates with cron jobs and evaluating ClickHouse, which needed a full ingestion pipeline just to handle their write pattern. Here's where most teams get stuck at exactly this point. They utilize manual partitioning, splitting data into child tables by day or month. Then they wire up cron jobs to refresh aggregate tables. Every schema change after that requires updating the cron logic and coordinating across teams. The infrastructure becomes the project. Tiger Cloud is managed TimescaleDB by @TigerDatabase on the Postgres you already know, with automatic time-based partitioning, continuous aggregates, and compression built in from the start. Cloudflare moved to TimescaleDB after exhausting the manual route and saw 5-35x query performance improvement on the same data. Here is how it works: → Hypertables partition data by timestamp automatically. Every time-range query hits only the relevant chunk, not the full table. → Continuous aggregates refresh incrementally in the background, with no cron jobs to maintain. To show what this looks like in practice, I built a real-time earthquake intelligence dashboard on a 3D globe using Claude Code and Tiger Cloud in a single session. The USGS earthquake catalog has 400,000+ events since 1900, each a timestamped row. The dashboard plots them as ripple animations sized by magnitude and colored by depth, with a time slider that scrubs through 120 years of seismic history. Every slider position fires a live query against the hypertable, and the side panel pulls from continuous aggregates. Claude Code connected to Tiger Cloud through the Tiger CLI MCP server, provisioned the database, pulled the USGS catalog, and assembled the full Next.js and Three.js frontend without leaving the session. The video below shows the final build in action, and I worked with the Tiger Data team to put this together. Tiger CLI is open-source (Apache 2.0) and works with Claude Code, Cursor, Codex, Gemini CLI, and VS Code. To try this yourself: → Sign up for Tiger Cloud here: https:// fandf.co/4w3FIbA. New accounts get $1,000 in free credits, no credit card required. → Install Tiger CLI: curl -fsSL https(:)//cli(.)tigerdata(.)com | sh → Run tiger mcp install claude-code → Give Claude Code a prompt and let it build. I also wrote a full walkthrough on how you can turn any coding agent into a production-grade data engineer that can manage over a billion-row Postgres workloads. It covers everything from the database setup to the final build. Read it below.

💬 0 0 0👁 312

용어 해설

s6-overlay
Docker 컨테이너 안에서 프로세스 감독과 초기화를 맡는 구성요소다. Hermes Agent의 공식 이미지에서는 /init이 실행되고 PID 1이 s6-svscan으로 동작해야 서비스 관리 안내가 해당 경로로 연결되며, 이 조건이 없으면 일반 컨테이너용 실행 안내가 출력된다.
PID 1 프로세스(PID 1)
컨테이너 내부에서 첫 번째로 실행되는 프로세스다. Hermes Agent는 PID 1의 comm 값이 s6-svscan인지와 /run/s6/basedir 존재 여부를 함께 확인해 공식 s6 이미지인지 판별하고, 결과에 따라 gateway 실행 방법을 다르게 안내한다.
재시작 정책(restart policy)
컨테이너가 중단됐을 때 Docker나 오케스트레이터가 다시 실행하도록 지정하는 설정이다. s6 감독자가 없는 일반 컨테이너에서는 별도의 서비스 설치 대신 hermes gateway run과 재시작 정책을 함께 사용하는 방식이 올바른 실행 경로가 된다.
AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 08. 17.수집 2026. 08. 17.출처 타입 TWITTER

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.