npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@icingrain/term-ai

v0.3.17

Published

Cross-platform terminal AI assistant: session context + requirements -> shell commands

Readme

@icingrain/term-ai

npm version Release Node.js

term-ai는 터미널 안에서 자연어 요구사항을 받아 셸 명령어로 바꿔주는 CLI입니다. #ai로 시작하는 한 줄을 입력하면 AI가 명령어를 만들고, 그 명령어를 셸 입력줄에 채워 넣습니다. 사용자가 Enter를 눌러야 실제 실행됩니다.
요구사항이 애매하면 터미널 안에서 바로 추가 질문을 하고, 그 답변은 같은 요청에 이어 붙여 처리합니다.

동작 방식

  1. term-ai를 실행하면 인터랙티브 셸 세션이 시작됩니다.
  2. 일반 셸 사용은 그대로 가능합니다.
  3. #ai <요구사항>을 입력하면 AI가 명령어를 생성합니다.
  4. 현재 세션 기록이 필요할 때만 참고합니다.
  5. 요구사항이 애매하면 터미널 안에서 바로 추가 질문을 합니다.
  6. 추가 질문에는 #ai를 다시 쓰지 말고, 바로 텍스트로 답합니다.
  7. 생성된 명령어는 클립보드에 복사되고 셸 입력줄에도 채워집니다.
  8. Enter를 누르면 실행되고, 수정하거나 취소할 수도 있습니다.

예시:

#ai 네트워크 포트 8000 켜져 있는지 확인

생성된 명령어:

lsof -nP -iTCP:8000 -sTCP:LISTEN

설치

전역 설치:

npm install -g @icingrain/term-ai

개발용 로컬 설치:

npm install
npm link

설치 후 실행:

term-ai

오프라인이나 의존성 설치가 어려운 환경에서는, 릴리스에 포함된 별도 설치 파일을 쓰는 방법을 참고하세요.

초기 설정

term-ai init

설정할 수 있는 프로바이더는 다음과 같습니다.

  1. OpenAI API 키
  2. OpenAI ChatGPT 구독 기반 Codex CLI
  3. Anthropic Claude API 키
  4. Claude Code CLI
  5. OpenAI 호환 커스텀 엔드포인트

Codex CLI를 쓰려면 먼저 로그인해야 합니다.

codex login

Claude Code를 쓰려면 Claude CLI도 설치되어 있어야 합니다.

claude

사용 예시

세션 시작:

term-ai

명령어 요청:

➜  프로젝트폴더 #ai 실행 프로세스 목록
[AI 처리 중...] "실행 프로세스 목록"
[AI 되묻기] 어떤 종류의 프로세스를 확인할까요?
> 전체 프로세스 중 상위 20개만
[AI 추가 정보] "전체 프로세스 중 상위 20개만"
[생성된 명령어]
ps aux | head -20
➜  프로젝트폴더 ps aux | head -20

요청이 애매하면 추가 질문이 나옵니다.

➜  프로젝트폴더 #ai 로그 지워줘
[AI 처리 중...] "로그 지워줘"
[AI 되묻기] 어떤 로그를 지우려는지 알려주세요.
> ./logs 폴더 안의 7일 지난 로그만
[AI 추가 정보] "./logs 폴더 안의 7일 지난 로그만"
[생성된 명령어]
find ./logs -type f -mtime +7 -delete

세션 기록 사용

term-ai는 사용자의 현재 입력만 보고 끝내지 않습니다. 필요할 때는 세션 기록을 함께 읽어서, 지금 요청이 단독으로 충분한지 아니면 이전 출력과 이어지는 요청인지 판단합니다.

다만 세션 기록을 매번 넣지는 않습니다. 단독으로 충분한 요청이면 현재 입력만으로 처리하고, 이전 출력이 있어야 의미가 생기는 요청일 때만 기록을 붙입니다.

#ai 네트워크 포트 8000 켜져 있는지 확인

이전 출력이 필요한 요청은 최근 터미널 출력을 참고합니다.

#ai 방금 실패한 서버 다시 띄워줘

주의 사항

  • macOS와 zsh/bash 기준으로 먼저 검증했습니다.
  • Windows native PowerShell/cmd 입력줄 주입은 별도 확인이 필요합니다.
  • 생성된 명령어는 자동 실행되지 않습니다.
  • 세션 기록은 메모리에서 최근 범위만 유지합니다.
  • 설정 파일은 프로젝트 안이 아니라 ~/.term-ai-cli/config.json에 저장됩니다.

개발

문법 확인:

find src -type f -name '*.js' -print0 | xargs -0 -n1 node --check
node --check bin/term-ai

라이선스

Apache License 2.0