artifacty 0.13.1 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Artifacty
2
2
 
3
+ English | [한국어](README.ko.md)
4
+
5
+ [Documentation](docs/README.md) · [한국어 문서](docs/ko/README.md)
6
+
3
7
  [![Publish](https://github.com/raeseoklee/artifacty/actions/workflows/publish.yml/badge.svg)](https://github.com/raeseoklee/artifacty/actions/workflows/publish.yml)
4
8
  [![npm version](https://img.shields.io/npm/v/artifacty.svg)](https://www.npmjs.com/package/artifacty)
5
9
  [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
@@ -128,6 +132,36 @@ Use `artifacty install codex --timeout 30000` or
128
132
 
129
133
  See [docs/integrations.md](docs/integrations.md) for Claude Code, Codex, Gemini CLI, GitHub Copilot in VS Code, and Cursor setup.
130
134
 
135
+ ## Update Artifacty
136
+
137
+ On any supported CLI platform, check for a release without changing the installation or store:
138
+
139
+ ```bash
140
+ artifacty update --check
141
+ ```
142
+
143
+ On Linux, the updater can install a release and restart the systemd user service `com.artifacty.server`:
144
+
145
+ ```bash
146
+ artifacty update
147
+ ```
148
+
149
+ `artifacty upgrade` is an alias. With no artifact ID, `update` updates the application. The existing `artifacty update <id>` command still updates artifact content. Use `--target-version <version>` to select an exact release. Use `--home /path/to/store` to select the store. Automatic updates refuse root execution and downgrades. If `latest` is older than the installed service, the updater keeps the newer installation.
150
+
151
+ For installed versions before 0.14.0, bootstrap the updater with:
152
+
153
+ ```bash
154
+ npx --yes artifacty@latest update && export PATH="$HOME/.local/bin:$PATH"
155
+ ```
156
+
157
+ This POSIX Linux shell command puts the user-owned launcher first for the current session after a successful update. For future sessions, add `~/.local/bin` to your shell's `PATH`.
158
+
159
+ The updater stages releases in the user's `~/.local/share/artifacty/releases` directory. It preserves the service's arguments and environment through a systemd drop-in. It creates and verifies a store snapshot before switching releases. If switching or startup fails, it attempts to roll back the changed code, service configuration, and store. Failures before the switch leave the running release in place.
160
+
161
+ Before stopping an active service, the updater checks its current health. If its bind address or network policy blocks that check, the update stops before downtime. The service stops during the update. Stop other clients that use the same store first. A store rollback discards writes made after the snapshot.
162
+
163
+ This automatic update path supports the Linux systemd user service only. It does not update macOS, Windows, foreground servers, or detached background servers automatically. A root-owned global installation remains in place. Add `~/.local/bin` to `PATH` if needed to use the user-owned launchers. If another command takes precedence, use the absolute `nextCommand` returned by the updater. It does not change shell configuration. An abrupt process or host shutdown can leave an update lock or a stopped service; inspect recovery before retrying. See [update operations and recovery](docs/upgrade-backups.md) for prerequisites and limits.
164
+
131
165
  ## Quick Start
132
166
 
133
167
  Create an artifact in the browser:
package/SECURITY.ko.md ADDED
@@ -0,0 +1,55 @@
1
+ <a id="security-policy"></a>
2
+
3
+ # 보안 정책
4
+
5
+ [English](SECURITY.md) | 한국어
6
+
7
+ <!-- 번역 기준: 9e73a9f -->
8
+
9
+ <a id="supported-versions"></a>
10
+
11
+ ## 지원 버전
12
+
13
+ Artifacty는 아직 1.0 이전 버전입니다. 프로젝트는 가장 최근에 배포한 마이너 릴리스에 보안 수정을 제공합니다. 보안 문제가 의심되면 신고 전에 `artifacty`를 최신 버전으로 업데이트하세요.
14
+
15
+ <a id="reporting-a-vulnerability"></a>
16
+
17
+ ## 취약점 신고
18
+
19
+ 이 저장소에서 GitHub 비공개 취약점 신고 기능을 제공하면 해당 기능을 사용하세요. 비공개 신고를 사용할 수 없으면 간단한 설명과 함께 GitHub 이슈를 등록하세요. 악용 방법의 세부 내용, 비밀 정보, 비공개 아티팩트, 민감한 네트워크 정보는 포함하지 마세요.
20
+
21
+ 다음 정보를 포함하세요.
22
+
23
+ - Artifacty 버전과 설치 방법.
24
+ - Node.js 버전과 운영체제.
25
+ - HTTP 서버를 localhost 전용으로 실행했는지, LAN/팀 모드로 실행했는지, 프록시 뒤에서 실행했는지 여부.
26
+ - `ARTIFACTY_API_TOKEN`과 `ARTIFACTY_ENABLE_REACT_RENDERER` 설정 여부.
27
+ - 민감하지 않은 샘플 콘텐츠를 사용한 재현 절차.
28
+
29
+ <a id="security-model"></a>
30
+
31
+ ## 보안 모델
32
+
33
+ Artifacty는 로컬 사용을 우선으로 설계했습니다. HTTP 서버는 기본적으로 `127.0.0.1`에 바인딩합니다. 루프백 이외의 주소에 바인딩하려면 `ARTIFACTY_SHARE_MODE=lan|team`과 API 토큰을 설정해야 합니다.
34
+
35
+ 프로젝트는 아티팩트 콘텐츠를 신뢰할 수 없는 데이터로 취급합니다.
36
+
37
+ - HTML, SVG, Mermaid, React 렌더링에는 샌드박스 프레임과 범위가 제한된 콘텐츠 보안 정책(CSP)을 사용합니다.
38
+ - `ARTIFACTY_ENABLE_REACT_RENDERER=true`를 설정하지 않으면 React를 실행하지 않습니다.
39
+ - 데이터를 변경하는 브라우저 경로는 다른 출처의 쓰기 요청을 거부합니다. 루프백 및 동일 출처의 요청은 허용합니다.
40
+ - API 토큰은 다이제스트를 일정한 시간에 비교하는 방식으로 검사합니다.
41
+ - 저장 전에 콘텐츠에서 일반적인 API 키와 개인 키를 탐지합니다. 호출자는 이러한 키가 포함된 콘텐츠를 명시적으로 허용할 수 있습니다.
42
+
43
+ 관리자는 사이트 접근 모드를 공개 또는 비공개로 선택할 수 있습니다. 비공개 모드에는 개인 계정이 필요합니다. 아티팩트에는 소유자, 관리자, 사용자 또는 팀 단위로 권한을 부여받은 사용자만 접근할 수 있습니다. 부여할 수 있는 권한은 읽기, 댓글 작성, 편집입니다. 토큰 범위는 API와 MCP 작업을 추가로 제한합니다.
44
+
45
+ 관리자는 IP 주소 또는 CIDR 대역으로 HTTP 접근을 제한할 수도 있습니다. Artifacty는 TCP 연결 상대의 주소를 검사하며 전달 헤더를 신뢰하지 않습니다. 비공개 모드에서 공개 공유 링크를 사용하려면 관리자가 명시적으로 허용해야 합니다.
46
+
47
+ Artifacty는 TLS 종료, 원격 OAuth, 호스팅된 동기화 서비스를 제공하지 않습니다. 서버를 공개 인터넷에 직접 노출하지 마세요.
48
+
49
+ <a id="supply-chain"></a>
50
+
51
+ ## 공급망
52
+
53
+ GitHub Actions는 npm Trusted Publishing OIDC를 통해 npm 릴리스를 배포합니다. 릴리스 워크플로는 배포 전에 지원하는 Node 버전에서 린트, 테스트, 스모크 검사를 실행합니다.
54
+
55
+ 운영 지침은 [위협 모델](docs/ko/threat-model.md)과 [네트워크 공유](docs/ko/network-sharing.md)를 참고하세요.
package/SECURITY.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # Security Policy
2
2
 
3
+ English | [한국어](SECURITY.ko.md)
4
+
3
5
  ## Supported Versions
4
6
 
5
7
  Artifacty is pre-1.0. The project provides security fixes for the latest
package/docs/README.md ADDED
@@ -0,0 +1,39 @@
1
+ # Documentation
2
+
3
+ English | [한국어](ko/README.md)
4
+
5
+ Start with the [project README](../README.md) for installation, features, CLI commands, and environment variables.
6
+
7
+ ## User and operator guides
8
+
9
+ | Document | English | 한국어 |
10
+ | --- | --- | --- |
11
+ | Installation and feature reference | [README](../README.md) | [README](../README.ko.md) |
12
+ | Agent integrations | [Guide](integrations.md) | [연동 안내](ko/integrations.md) |
13
+ | Network sharing | [Guide](network-sharing.md) | [네트워크 공유](ko/network-sharing.md) |
14
+ | Upgrade snapshots and recovery | [Guide](upgrade-backups.md) | [업데이트 백업과 복구](ko/upgrade-backups.md) |
15
+ | MCP public API | [Reference](mcp-public-api.md) | [MCP API 참조](ko/mcp-public-api.md) |
16
+ | Artifact schema v1 | [Reference](artifact-schema-v1.md) | [아티팩트 스키마](ko/artifact-schema-v1.md) |
17
+ | Security policy | [Policy](../SECURITY.md) | [보안 정책](../SECURITY.ko.md) |
18
+ | Threat model | [Reference](threat-model.md) | [위협 모델](ko/threat-model.md) |
19
+ | Release checklist | [Checklist](release-checklist.md) | [릴리스 체크리스트](ko/release-checklist.md) |
20
+ | Documentation writing style | [Guide](writing-style.md) | [문서 작성 기준](ko/writing-style.md) |
21
+
22
+ ## Design and implementation history
23
+
24
+ These documents are currently available in English. They contain proposals and historical implementation notes; a planned feature is not necessarily available in the current release.
25
+
26
+ - [Central team deployment](central-team-deployment-design.md)
27
+ - [Roadmap and design](roadmap-design.md)
28
+ - [Claude artifact formats](claude-artifact-formats.md)
29
+ - [SARIF and CSV artifact support](sarif-csv-artifact-plan.md)
30
+
31
+ ## Translation maintenance
32
+
33
+ - Keep `README.md` as the default English entry point and `README.ko.md` as its Korean counterpart. Detailed Korean documents mirror filenames under `docs/ko/`.
34
+ - Keep language links in both directions. Prefer translated links when available; label English-only references clearly.
35
+ - Preserve commands, API identifiers, example values, defaults, permission rules, and requirements. Translate prose using the [writing style guide](writing-style.md).
36
+ - Update both languages in the same pull request when behavior changes. If a translation cannot be updated, mark it as outdated and link to the current English section.
37
+ - Each translation records its source revision in an HTML comment. Update that revision after checking the translation against the source. The initial translations use revision `9e73a9f`.
38
+ - Verify relative links, section anchors, code examples, and environment-variable coverage before merging. Do not execute destructive or production commands just to verify a translation.
39
+ - Repository translations do not change browser language settings or replace manuals already installed as sample artifacts.
@@ -1,5 +1,7 @@
1
1
  # Artifact Schema v1
2
2
 
3
+ English | [한국어](ko/artifact-schema-v1.md)
4
+
3
5
  Artifacty schema v1 defines the stable record structure for HTTP, CLI, MCP,
4
6
  converters, and SQLite storage.
5
7