Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 28 additions & 15 deletions README.ja.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,21 @@
# session-peer (TypeScript)

[![npm バージョン](https://img.shields.io/npm/v/session-peer?logo=npm)](https://www.npmjs.com/package/session-peer)
[![npm 週間ダウンロード](https://img.shields.io/npm/dw/session-peer?logo=npm)](https://www.npmjs.com/package/session-peer)
[![npm 月間ダウンロード](https://img.shields.io/npm/dm/session-peer?logo=npm)](https://www.npmjs.com/package/session-peer)
[![CI](https://github.com/abruption/session-peer-ts/actions/workflows/ci.yml/badge.svg)](https://github.com/abruption/session-peer-ts/actions/workflows/ci.yml)
[![Node 対応](https://img.shields.io/node/v/session-peer?logo=node.js)](https://www.npmjs.com/package/session-peer)
[![MIT ライセンス](https://img.shields.io/npm/l/session-peer)](LICENSE)

<sub>npm のダウンロード統計はパッケージ公開より遅れて反映される場合があります。</sub>

[English](README.md) | [한국어](README.ko.md) | [日本語](README.ja.md) | [简体中文](README.zh-CN.md)

<!-- docs-contract: stable-release-source; package=session-peer; bin=session-peer; node=22.13+/24; python-reference=1.0.2 -->

実行中の **Claude Code と Codex セッション**に、ローカルまたは SSH 経由でメッセージを送る TypeScript クライアントです。Node.js で動作し、Python は不要です。

**0.1.0 安定版のリリースソースであり、公開には別途承認が必要です。**パッケージ名は `session-peer`、CLI コマンドは **`session-peer`**。Relay サーバーやホスティングサービスは提供しません。
**0.1.0 安定版は npm で公開済みです。**パッケージ名は `session-peer`、CLI コマンドは **`session-peer`**。Relay サーバーやホスティングサービスは提供しません。

## 機能と範囲

Expand All @@ -23,7 +32,18 @@ macOS / Linux / Windows native、Node **22.x の 22.13 以上、または 24.x**

## インストール

検証済みの `0.1.0-preview.1` は公開されています。安定版の公開前にレビュー済みの `0.1.0` ソースを評価するには、ビルドして必要ならローカル tarball をインストールします。
検証済みの安定版は、Node 22.x の 22.13 以上または 24.x でインストールできます。Python CLI も同じコマンド名を使うため、既存のインストールがあれば先に PATH を確認してください。

```sh
npm install --global --ignore-scripts session-peer@0.1.0
session-peer --version
```

期待値は `session-peer 0.1.0 (typescript)`。まず `session-peer list --agent claude --json` で宛先を探し、送信前に `--dry-run` で確認してください。

### ソースからビルド

公開済みの npm パッケージではなくレビュー済みのソースを使うには、ビルドして必要ならローカル tarball をインストールします。

```sh
git clone https://github.com/abruption/session-peer-ts.git
Expand All @@ -37,13 +57,13 @@ npm install --global --ignore-scripts ./session-peer-0.1.0.tgz
session-peer --version
```

期待値は `session-peer 0.1.0 (typescript)`。`./...tgz` を省略せず、ローカルの候補を選択してください。安定版の承認と検証が完了するまでは、レジストリからのインストールに正確なバージョンを指定してください。
`./...tgz` を省略せず、ローカルの成果物を選択してください。後のバージョンのソースを使う場合は、チェックアウトしたバージョンを先に確認してください。

### 既存インストールとの共存

インストール前後に `type -a session-peer` と `command -v session-peer` を確認します。他の実装も同名コマンドを提供するため、PATH 上の一つを選ぶか `node /absolute/path/dist/cli.js` を使ってください。`--force` で他の管理ツールのファイルを上書きしないでください。Python パッケージ・スキル・サービスを自動変更しません。削除は `npm uninstall --global session-peer` を使い、PATH を再確認します。

Windows PowerShell では `Get-Command session-peer -All` で既存コマンドを確認します。Python CLI を置換せずに試すには、`npm ci --ignore-scripts`、`npm run build`、`npm pack --ignore-scripts` の後、`npm install --prefix "$env:TEMP\session-peer-ts-candidate" --ignore-scripts .\session-peer-0.1.0.tgz` を実行し、`& "$env:TEMP\session-peer-ts-candidate\node_modules\.bin\session-peer.cmd" --version` で確認します。同じ prefix の `npm uninstall --prefix "$env:TEMP\session-peer-ts-candidate" session-peer` で削除します。
Windows PowerShell では `Get-Command session-peer -All` で既存コマンドを確認します。Python CLI を置換せずに試すには、`npm ci --ignore-scripts`、`npm run build`、`npm pack --ignore-scripts` の後、`npm install --prefix "$env:TEMP\session-peer-ts-source" --ignore-scripts .\session-peer-0.1.0.tgz` を実行し、`& "$env:TEMP\session-peer-ts-source\node_modules\.bin\session-peer.cmd" --version` で確認します。同じ prefix の `npm uninstall --prefix "$env:TEMP\session-peer-ts-source" session-peer` で削除します。

## 使い方

Expand Down Expand Up @@ -95,21 +115,14 @@ npm audit

Python は開発時の互換検証基準のみです(v1.0.2、`47c23713d0a2a3c11ebde6186afd8c43489b8b65`)。実行時依存ではありません。POSIX 契約テストには C コンパイラーと lsof も必要です。CI は基準コミットを固定し macOS/Linux/Windows × Node 22/24 を確認します。SQLite・Unix inbox・実 lock の fixture と、専用実 TUI の証拠 [VALIDATION.md](VALIDATION.md) は別です。fixture 成功は ACK ではありません。パッケージ内容、反復 pack ハッシュ、新規インストール、アンインストールも検証します。ネイティブ依存の通常の install script は実行せず、検証した prebuilt 経路は `--ignore-scripts` を使います。SQLite 読み取り専用接続も WAL 共有メモリー管理に関与し得るため、スナップショットではありません。

[CONTRIBUTING.md](CONTRIBUTING.md)、[RELEASING.md](RELEASING.md)、[SECURITY.md](SECURITY.md) を参照してください。公開には別途承認が必要で、自動 npm 公開はありません。[MIT](LICENSE) ライセンスです。

## npm 公開後のインストール

公開済みプレビューは、レジストリの整合性・provenance・署名・新規インストールの検証に合格しました。安定版への昇格前は、バージョンを指定しないインストールが `latest` の旧 `0.1.0-preview.0` を選ぶため、次の正確なバージョンを指定してください。
[CONTRIBUTING.md](CONTRIBUTING.md)、[RELEASING.md](RELEASING.md)、[SECURITY.md](SECURITY.md) を参照してください。今後のリリースの公開には別途承認が必要で、自動 npm 公開はありません。[MIT](LICENSE) ライセンスです。

```sh
npm install --global --ignore-scripts session-peer@0.1.0-preview.1
```
## npm リリース

別途承認された `0.1.0` の staging が公開・検証された後、安定版を正確なバージョンでインストールしてください。
公開済みの `session-peer@0.1.0` は、レジストリの整合性・provenance メタデータ・署名・新規インストールとアンインストールの検証に合格しました。`latest` は `0.1.0`、`preview` は `0.1.0-preview.1` を指します。バージョンを指定しないインストールの前に現在のタグを確認してください。

```sh
npm install --global --ignore-scripts session-peer@0.1.0
session-peer --version
npm view session-peer dist-tags
```

手動ワークフローは Trusted Publisher OIDC で staging し、保守者が 2FA で承認します。staging 成功は公開完了ではありません。[RELEASING.md](RELEASING.md) を参照してください。
Expand Down
61 changes: 37 additions & 24 deletions README.ko.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,22 @@
# session-peer (TypeScript)

[![npm 버전](https://img.shields.io/npm/v/session-peer?logo=npm)](https://www.npmjs.com/package/session-peer)
[![npm 주간 다운로드](https://img.shields.io/npm/dw/session-peer?logo=npm)](https://www.npmjs.com/package/session-peer)
[![npm 월간 다운로드](https://img.shields.io/npm/dm/session-peer?logo=npm)](https://www.npmjs.com/package/session-peer)
[![CI](https://github.com/abruption/session-peer-ts/actions/workflows/ci.yml/badge.svg)](https://github.com/abruption/session-peer-ts/actions/workflows/ci.yml)
[![Node 지원](https://img.shields.io/node/v/session-peer?logo=node.js)](https://www.npmjs.com/package/session-peer)
[![MIT 라이선스](https://img.shields.io/npm/l/session-peer)](LICENSE)

<sub>npm 다운로드 통계는 패키지 공개보다 늦게 반영될 수 있습니다.</sub>

[English](README.md) | [한국어](README.ko.md) | [日本語](README.ja.md) | [简体中文](README.zh-CN.md)

<!-- docs-contract: stable-release-source; package=session-peer; bin=session-peer; node=22.13+/24; python-reference=1.0.2 -->

실행 중인 **Claude Code·Codex 세션에 로컬 또는 SSH로 메시지를 전달**하는
TypeScript 클라이언트입니다. Python 없이 Node.js로 실행합니다.

**0.1.0 안정판 릴리스 소스이며 발행에는 별도 승인이 필요합니다.** 패키지명은
**0.1.0 안정판이 npm에 공개됐습니다.** 패키지명은
`session-peer`, CLI 명령어는 **`session-peer`**입니다. Relay 서버나 호스팅
서비스를 제공하는 프로젝트가 아닙니다.

Expand Down Expand Up @@ -35,8 +44,21 @@ macOS/Linux/Windows native와 Node **22.x의 22.13 이상 또는 24.x**가 필

## 설치

검증된 `0.1.0-preview.1`은 공개됐습니다. 안정판 발행 전에 검토한
`0.1.0` 소스를 평가하려면 소스를 빌드하고 필요한 경우
Node 22.x의 22.13 이상 또는 24.x에서 검증된 안정판을 설치합니다.
Python CLI도 같은 명령어를 사용하므로 기존 설치본이 있다면 먼저 PATH를 확인하세요.

```sh
npm install --global --ignore-scripts session-peer@0.1.0
session-peer --version
```

예상 출력은 `session-peer 0.1.0 (typescript)`입니다. 먼저
`session-peer list --agent claude --json`으로 대상을 찾고 `--dry-run`으로
제출 전에 확인하세요.

### 소스에서 빌드

공개된 npm 패키지 대신 검토한 소스를 실행하려면 빌드하고 필요한 경우
로컬 tarball을 설치합니다.

```sh
Expand All @@ -51,9 +73,8 @@ npm install --global --ignore-scripts ./session-peer-0.1.0.tgz
session-peer --version
```

예상 출력은 `session-peer 0.1.0 (typescript)`입니다. 설치 명령의
`./...tgz`는 로컬 후보 산출물을 지정하므로 생략하지 마세요. 안정판의
승인·검증이 끝나기 전까지 레지스트리 설치에는 정확한 버전을 지정하세요.
설치 명령의 `./...tgz`는 로컬 산출물을 지정하므로 생략하지 마세요.
나중 버전의 소스를 사용할 때는 체크아웃 버전을 먼저 확인하세요.

### 기존 설치본과 PATH

Expand All @@ -71,9 +92,9 @@ Python CLI를 덮어쓰지 않으려면 격리 prefix에 설치·제거할 수
npm ci --ignore-scripts
npm run build
npm pack --ignore-scripts
npm install --prefix "$env:TEMP\session-peer-ts-candidate" --ignore-scripts .\session-peer-0.1.0.tgz
& "$env:TEMP\session-peer-ts-candidate\node_modules\.bin\session-peer.cmd" --version
# 이후 제거: npm uninstall --prefix "$env:TEMP\session-peer-ts-candidate" session-peer
npm install --prefix "$env:TEMP\session-peer-ts-source" --ignore-scripts .\session-peer-0.1.0.tgz
& "$env:TEMP\session-peer-ts-source\node_modules\.bin\session-peer.cmd" --version
# 이후 제거: npm uninstall --prefix "$env:TEMP\session-peer-ts-source" session-peer
```

## 사용법
Expand Down Expand Up @@ -160,25 +181,17 @@ C 컴파일러와 lsof는 POSIX 계약 테스트에 필요합니다. CI는 참
처리에 참여할 수 있으므로 스냅샷 읽기는 아닙니다.

[CONTRIBUTING.md](CONTRIBUTING.md), [RELEASING.md](RELEASING.md),
[SECURITY.md](SECURITY.md)를 참고하세요. 발행에는 별도 승인이 필요하며 npm 자동
발행은 활성화하지 않았습니다. [MIT 라이선스](LICENSE)입니다.

## npm 발행 후 설치

공개 프리뷰는 레지스트리 무결성·provenance·서명·새 환경 설치 검증을
통과했습니다. 안정판 승격 전 버전 미지정 설치는 `latest`로 표시된 이전
`0.1.0-preview.0`을 선택하므로 아래 정확한 버전으로 설치하세요.
[SECURITY.md](SECURITY.md)를 참고하세요. 이후 릴리스 발행에는 별도 승인이 필요하며
npm 자동 발행은 활성화하지 않았습니다. [MIT 라이선스](LICENSE)입니다.

```sh
npm install --global --ignore-scripts session-peer@0.1.0-preview.1
```
## npm 릴리스

별도 승인된 `0.1.0` staging의 공개와 검증이 끝난 뒤에는 안정판을 정확한
버전으로 설치하세요.
공개된 `session-peer@0.1.0`은 레지스트리 무결성·provenance 메타데이터·서명·
새 환경 설치와 제거 검증을 통과했습니다. `latest`는 `0.1.0`, `preview`는
`0.1.0-preview.1`을 가리킵니다. 버전 미지정 설치 전 현재 태그를 확인하세요.

```sh
npm install --global --ignore-scripts session-peer@0.1.0
session-peer --version
npm view session-peer dist-tags
```

수동 발행 워크플로우는 Trusted Publisher OIDC로 staging하고 유지관리자가 2FA로 승인합니다.
Expand Down
83 changes: 50 additions & 33 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,40 @@
# session-peer (TypeScript)

[![npm version](https://img.shields.io/npm/v/session-peer?logo=npm)](https://www.npmjs.com/package/session-peer)
[![npm downloads per week](https://img.shields.io/npm/dw/session-peer?logo=npm)](https://www.npmjs.com/package/session-peer)
[![npm downloads per month](https://img.shields.io/npm/dm/session-peer?logo=npm)](https://www.npmjs.com/package/session-peer)
[![CI](https://github.com/abruption/session-peer-ts/actions/workflows/ci.yml/badge.svg)](https://github.com/abruption/session-peer-ts/actions/workflows/ci.yml)
[![Node support](https://img.shields.io/node/v/session-peer?logo=node.js)](https://www.npmjs.com/package/session-peer)
[![MIT license](https://img.shields.io/npm/l/session-peer)](LICENSE)

<sub>npm download statistics can lag behind package publication.</sub>

[English](README.md) | [한국어](README.ko.md) | [日本語](README.ja.md) | [简体中文](README.zh-CN.md)

<!-- docs-contract: stable-release-source; package=session-peer; bin=session-peer; node=22.13+/24; python-reference=1.0.2 -->

Send messages to running **Claude Code and Codex sessions**, locally or on
another machine over SSH. This TypeScript client runs on Node.js without Python.
**Find and message running Claude Code and Codex sessions, locally or over SSH.**
This TypeScript client runs on Node.js without Python.

The published npm package and CLI command are both **`session-peer`**. This
project does not provide a Relay server or hosted service.

**0.1.0 stable release source; publication requires separate approval.** Package name:
`session-peer`. CLI command: **`session-peer`**. This project does not provide
a Relay server or hosted service.
## Quick start

Use Node **22.13+ within 22.x or 24.x**. Check which `session-peer` your PATH
selects if the Python CLI is already installed; both packages use that command.

```sh
npm install --global --ignore-scripts session-peer@0.1.0
session-peer --version # session-peer 0.1.0 (typescript)
session-peer list --agent claude --json
session-peer send --to CLAUDE_PID --message 'Please review the API contract.' --dry-run --json
```

Replace `CLAUDE_PID` with an exact PID from the listing. `--dry-run` validates
without sending; remove it only when delivery is intended. A `posted` or
`queued` result means submission, not that the receiver read or completed the
request. See [What success means](#what-success-means).

## What it does

Expand All @@ -34,11 +59,10 @@ need `lsof` and `ps`. Windows uses native lock and Restart Manager inspection.
Claude needs a live TUI with an accessible native inbox. SSH requires OpenSSH,
existing key/host trust and the **same client version** on the destination.

## Install
## Build from source

The verified `0.1.0-preview.1` is public. To evaluate the reviewed `0.1.0`
source before stable publication, build it and optionally install its local
tarball:
To run a reviewed source checkout instead of the published npm package, build
it and optionally install its local tarball:

```sh
git clone https://github.com/abruption/session-peer-ts.git
Expand All @@ -53,10 +77,10 @@ session-peer --version
```

Expected: `session-peer 0.1.0 (typescript)`. Keep the `./...tgz` path to
select the locally built candidate. Use an explicit version for registry
installation until the stable release has been approved and verified.
select the locally built artifact. Check the checkout version before using
these commands for a later release.

### Existing installations
## Existing installations

Other implementations may also install `session-peer`. Check `type -a session-peer`
and `command -v session-peer` before and after installation. Choose one on PATH,
Expand All @@ -72,9 +96,9 @@ On Windows PowerShell, inspect competing commands with
npm ci --ignore-scripts
npm run build
npm pack --ignore-scripts
npm install --prefix "$env:TEMP\session-peer-ts-candidate" --ignore-scripts .\session-peer-0.1.0.tgz
& "$env:TEMP\session-peer-ts-candidate\node_modules\.bin\session-peer.cmd" --version
# Later: npm uninstall --prefix "$env:TEMP\session-peer-ts-candidate" session-peer
npm install --prefix "$env:TEMP\session-peer-ts-source" --ignore-scripts .\session-peer-0.1.0.tgz
& "$env:TEMP\session-peer-ts-source\node_modules\.bin\session-peer.cmd" --version
# Later: npm uninstall --prefix "$env:TEMP\session-peer-ts-source" session-peer
```

## Use
Expand Down Expand Up @@ -167,30 +191,23 @@ the verified prebuilt path uses `--ignore-scripts`. SQLite read-only readers may
participate in WAL shared-memory bookkeeping; they are not snapshots.

See [CONTRIBUTING.md](CONTRIBUTING.md), [RELEASING.md](RELEASING.md) and
[SECURITY.md](SECURITY.md). Publication requires separate approval; no automatic
npm publish is enabled. Licensed under [MIT](LICENSE).

## npm release installation

The public preview passed registry integrity, provenance, signature and
fresh-install checks. Install it by exact version. Before stable promotion,
unversioned installs select the older `0.1.0-preview.0` marked `latest`:
[SECURITY.md](SECURITY.md). Future publication remains manual and requires
separate approval. Licensed under [MIT](LICENSE).

```sh
npm install --global --ignore-scripts session-peer@0.1.0-preview.1
```
## Package release

Only after the separately approved `0.1.0` stage is published and verified,
install the stable version by exact number:
`session-peer@0.1.0` is the verified stable npm release. Its public registry
integrity, provenance metadata, signature audit, fresh install and uninstall
passed. The `latest` tag points to `0.1.0`; the `preview` tag remains on
`0.1.0-preview.1`. Check current tags before relying on an unversioned install:

```sh
npm install --global --ignore-scripts session-peer@0.1.0
session-peer --version
npm view session-peer dist-tags
```

The manual workflow uses Trusted Publisher OIDC staging and requires a
maintainer's 2FA approval; a staged upload is not a public release. See
[RELEASING.md](RELEASING.md).
The release workflow uses Trusted Publisher OIDC staging and a maintainer's
separate 2FA approval. A staged upload is not a public release. See
[RELEASING.md](RELEASING.md) for the process.

## Related project

Expand Down
Loading
Loading