secretcord
v1.0.2
Published
터미널에서 안전하게 사용하는 Discord 채팅 클라이언트
Maintainers
Readme
SecretCord Terminal
NestJS와 Necord를 이용해 Discord 서버의 텍스트 채널을 터미널에서 선택하고 대화하는 전체화면 TUI입니다.
메시지 본문과 첨부 URL은 기본적으로 Base64 문자열로 표시됩니다. 숨김 상태에서는 화면이 AI Workspace 테마로 바뀌며 실제 작성자 이름을 User와 Assistant로 필터링하고 서버·채널 이름을 감춥니다. 채팅 입력창에 /reveal을 입력하면 5초 동안 Discord 테마와 원문·실제 이름을 보여주고 자동으로 다시 숨깁니다.
[!WARNING] Base64는 암호화가 아닙니다. 화면을 우연히 보는 사람에게 원문이 바로 노출되는 것을 줄일 뿐이며, 터미널 기록·프로세스 접근 권한이 있는 사람으로부터 내용을 보호하지 못합니다.
요구 사항
- Node.js 20 이상
- npm
- Discord 봇과 봇 토큰
- 봇을 추가할 수 있는 Discord 서버
Discord 봇 준비
- Discord Developer Portal에서 애플리케이션을 만들고 Bot을 추가합니다.
- Bot → Privileged Gateway Intents → Message Content Intent를 활성화합니다.
- Installation 또는 OAuth2 화면에서
botscope를 선택하고 다음 최소 권한으로 서버에 초대합니다.- View Channels
- Send Messages
- Read Message History
- Bot 화면에서 토큰을 발급하거나 재설정합니다. 토큰은 비밀번호처럼 다루고 Git에 커밋하지 마세요.
일반 텍스트 채널만 지원합니다. Discord의 채널별 권한 덮어쓰기로 위 권한이 차단된 채널은 목록에 나타나지 않습니다.
설치와 실행
npx로 바로 실행
npm 패키지가 배포된 뒤에는 별도 전역 설치 없이 다음 명령으로 실행합니다.
npx secretcord처음 실행하거나 저장된 토큰이 없으면 SecretCord Install & Setup TUI가 자동으로 열립니다. 토큰은 마스킹 입력되고 실제 Discord 연결 검증을 통과한 뒤 %USERPROFILE%\.secretcord\.env에 저장됩니다.
설정 화면을 다시 열려면 다음을 사용합니다.
npx secretcord setup
# 또는 전역 명령을 등록한 경우
secretcord setup소스에서 실행
PowerShell에서 다음 명령을 실행합니다.
cd C:\Users\ghju\necord-terminal-chat
npm install
Copy-Item .env.example .env프로젝트의 .npmrc는 Windows + Node 24에서 충돌하는 Necord의 후원 안내용 postinstall을 건너뜁니다. 애플리케이션 동작에 필요한 선택적 플랫폼 패키지는 계속 설치됩니다.
공개 npm 패키지는 Necord의 MIT 라이선스 런타임을 내부에 포함하므로 npx secretcord 사용자는 별도의 --ignore-scripts 옵션이 필요하지 않습니다. 원본 라이선스는 배포 파일의 vendor/necord/LICENSE에 포함됩니다.
.env를 열어 실제 봇 토큰을 입력합니다.
DISCORD_TOKEN=여기에-봇-토큰-입력개발 모드로 실행합니다.
npm run start:dev빌드한 프로그램을 실행하려면 다음을 사용합니다.
npm run build
npm startsecretcord 전역 명령 등록
프로젝트를 한 번 빌드한 다음 전역 명령으로 연결합니다.
npm run build
npm link이후 어느 터미널 경로에서든 다음처럼 실행할 수 있습니다.
secretcord
secretcord --help전역 명령과 npx는 사용자 설정 %USERPROFILE%\.secretcord\.env를 읽습니다. 소스 개발 중 프로젝트 .env가 있으면 프로젝트 설정을 우선 사용합니다.
npm 배포 확인
배포 파일 목록과 패키지 구성을 실제 배포 없이 확인합니다.
npm run pack:checknpm 로그인을 완료한 뒤 공개 배포합니다.
npm login
npm publish패키지는 공개 npm 이름 secretcord로 배포되며 실행 명령도 secretcord입니다.
조작법
- 서버/채널 선택:
↑,↓,Enter - 이전 선택 화면: 원문 공개 상태에서만
Esc(/hide상태에서는 잠김) - 메시지 전송: 메시지 입력 후
Enter - 원문을 5초 동안 공개:
/reveal - AI 도구 위장 화면으로 즉시 복귀:
/hide - 메시지 스크롤:
PageUp,PageDown - 종료:
Ctrl+C
/reveal과 /hide는 로컬 TUI 명령이며 Discord로 전송되지 않습니다. 그 외 /로 시작하는 입력은 일반 메시지로 전송됩니다. 원치 않는 알림을 방지하기 위해 사용자·역할·@everyone 멘션은 실제 알림으로 해석되지 않도록 전송합니다.
지원 범위
- 실행할 때마다 서버와 채널 선택
- 최근 메시지 20개와 실시간 새 메시지 표시
- 다른 사용자의 새 메시지가 오면 터미널 제목에
🔔 SecretCord (개수)알림 표시 - 텍스트 송수신과 수신 첨부파일 URL 표시
- 최신 메시지 200개까지 메모리 유지
- 한국어 상태 및 오류 메시지
DM, 스레드, 포럼, 파일 업로드, 답장, 반응, 메시지 편집·삭제 실시간 반영은 지원하지 않습니다.
테스트
npm test환경 설정, UTF-8 Base64 변환, Discord 메시지 정규화, 서버·채널 선택, 5초 원문 공개 후 자동 숨김을 검사합니다.
