進行中・要確認
処理状況を復元中...
Googleアカウントでログインしてください。
管理者から受け取った招待URLで入場し、アサインされたプロジェクトを利用できます。
画像がありません
動画がありません
Project Database
キャラクター・背景・物体などの基準画像とLoRAを登録し、生成指示からすぐに参照できます。
Library
0 images / 画像名とdescriptionは生成時の参照情報として使用されます。
画像が登録されていません
LoRA Library
Anima選択時の画像生成指示から利用できます。
LoRAが登録されていません
プロジェクトがありません。管理者にプロジェクト作成を依頼してください。
ANNOTATION EDIT LAB
プロジェクトがありません。管理者にプロジェクト作成を依頼してください。
ANGLE EDIT LAB
カメラをつかんで動かし、向き、高さ、距離を調整します。
REFERENCE SAMPLE
プロジェクトがありません。管理者にプロジェクト作成を依頼してください。
TRANSPARENT PNG
画像を1枚選び、主要な被写体を残して背景だけを透明にします。
プロジェクトがありません。管理者にプロジェクト作成を依頼してください。
LAYER DECOMPOSITION
1枚の画像を背景と重ね直せる透過PNG素材へ分解します。
プロジェクトがありません。管理者にプロジェクト作成を依頼してください。
TEXT TO AUDIO
文章から自然な読み上げ音声を生成し、再生・ダウンロードできます。
プロジェクトがありません。管理者にプロジェクト作成を依頼してください。
RESTORATION LAB
選択した処理方法に応じて、受付媒体・出力形式・制限値が変わります。
MODE SAMPLE
線や構図を保ちながら、ラフな質感を整えた完成寄りの画像へ再レンダリングします。
プロジェクトがありません。管理者にプロジェクト作成を依頼してください。
SEPARATION LAB
動画や音声から、楽器のstemまたは声 / BGM / SEを抽出します。
STEM LISTENING SAMPLE
DeepExtractV2のサンプルです。動画本体の音声は使わず、分離済みの4 stemだけを動画尺に合わせて再生します。vocals / drums / bass / otherを組み合わせて、必要な音だけを確認できます。
プロジェクトがありません。管理者にプロジェクト作成を依頼してください。
PSD Rewrite Tool
PDF・DOCX・TXT台本からセリフを整理し、PSDテンプレートとローカルPhotoshop実行用JSXを1つのZIPにまとめます。
Google DocsはDOCX、TXT、PDFのいずれかで書き出してください。旧形式のDOCは非対応です。
PSD内の全レイヤーを検出します。話者にはテキストレイヤーを割り当て、背景・下地は別設定で常時ONにできます。
台本ファイルとPSDテンプレートを選択後、AIがセリフと話者を暫定抽出します。
PSDテンプレートと台本解析後に、話者ごとのテキストレイヤーと常時ONにする背景レイヤーを設定できます。
解析後に一覧が表示されます。
| No. | 話者 | セリフ | PSDレイヤー | |
|---|---|---|---|---|
| 台本解析後、ここでセリフを編集できます。 | ||||
STYLE LoRA MAKER
内容をそろえた2枚を比較し、その差分から画風を学習したLoRAを作成します。
人物、服、ポーズ、構図、背景配置をそろえ、線・塗り・質感など画風だけが違う2枚を使います。
各captionには対応画像の人物、服、ポーズ、構図を書きます。抽出したい画風、作家名、品質タグは入れないでください。
履歴を復元中...
処理状況を復元中...
プロジェクトがありません。管理者にプロジェクト作成を依頼してください。
ANIMA LoRA STUDIO
Anima用LoRAを素材画像から作成します。素材、タグ、設定を順に確認してからGPU学習を開始します。
履歴を復元中...
表示名を入力し、必要な場合だけ生成時にLoRAを呼び出すトリガーワードを設定します。
画像からタグ候補を作るか、入力したタグをすべての画像へまとめて追加・削除できます。
あと5枚追加すると、タグ候補を作成できます。
複数のタグはカンマで区切って入力します。
LoRAを学習しています。画像枚数や設定により時間がかかります。開始後は画面を離れてもWorkから復元できます。
ダウンロードした `.safetensors` をComfyUIの `models/loras` に配置し、LoRA Loaderから選択してください。
月ごとの利用量を、全体・自分・プロジェクト単位で確認します。
ユーザーとプロジェクトの作成・削除を管理します。時系列の利用履歴とは独立した管理領域です。
| 日時 | ユーザー | 機能 | プロジェクト | 提供会社 / サービス | モデル | 利用量 | 推定コスト |
|---|
このウェブサイトへの招待は完了していますが、創作用プロジェクトへのアサインがないため実利用はできません。
管理者、または対象プロジェクトのリーダーにプロジェクトアサインを依頼してください。
色付きの範囲がOpenAIへ渡す改変候補です。厳密な保護境界ではありません。
AGENT CONNECTION
下の指示をPCのAIエージェントに渡すと、HAMSTERの生成・保存をエージェントから使えるようになります。
この配信先では接続環境を確認できません。HAMSTERの正規URLで開いてください。
HAMSTER agent connection (dev) - instructions for the AI agent
You are an AI agent on the user's Windows PC or Mac (any MCP host: OpenCode, Claude Code, Codex, Cursor, ...; or CLI only). Linux is unsupported.
Goal: connect to HAMSTER and act for the user. Skip steps already done. Reply to the user in their language.
WINDOWS: run the numbered PowerShell code below in Windows PowerShell 5.1+ (from another shell: powershell.exe -NoProfile -Command ...).
MAC: use the standard terminal, Node.js 22.22.3+ and Apple command-line tools (xcrun clang). Use the verified installer below instead of Windows steps 1-2. No sudo or plaintext credential fallback. Keychain access must be approved by the user.
node --version
xcrun --find clang
node --input-type=module <<'NODE'
import { createHash } from 'node:crypto';
import { mkdtemp, writeFile, rm } from 'node:fs/promises';
import { tmpdir } from 'node:os';
import { join } from 'node:path';
import { spawnSync } from 'node:child_process';
const origin = 'https://hamster-dev-499710.web.app';
async function get(path, limit) {
const response = await fetch(origin + path, { redirect: 'error', signal: AbortSignal.timeout(30000) });
if (!response.ok || !response.body) throw Error('Download failed');
const chunks = []; let size = 0;
for await (const chunk of response.body) {
if ((size += chunk.length) > limit) throw Error('Download too large');
chunks.push(chunk);
}
return Buffer.concat(chunks);
}
const manifest = JSON.parse(await get('/downloads/hamster-agent.json', 16384));
if (!/^\/downloads\/hamster-agent-[0-9a-f]{40}\.tgz$/.test(manifest.path) ||
!/^sha512-[A-Za-z0-9+/]{86}==$/.test(manifest.integrity)) throw Error('Invalid manifest');
const bytes = await get(manifest.path, 8 * 1024 * 1024);
if ('sha512-' + createHash('sha512').update(bytes).digest('base64') !== manifest.integrity)
throw Error('Integrity mismatch: not installed');
const root = await mkdtemp(join(tmpdir(), 'hamster-install-'));
try {
const file = join(root, 'client.tgz'); await writeFile(file, bytes, { flag: 'wx', mode: 0o600 });
const result = spawnSync('npm', ['install', '--global', '--ignore-scripts', file], { stdio: 'inherit', shell: false });
if (result.error || result.status !== 0) throw Error('npm installation failed');
} finally { await rm(root, { recursive: true, force: true }); }
NODE
hamster version
- For steps 3-8 on Mac: replace every PowerShell `& $node $hamsterCli` prefix with `hamster`; use `npm`, not `npm.cmd`. Skip Windows-only DPAPI lock cleanup. All consent, billing and no-replay rules still apply.
- Mac MCP registration: command = absolute path from `command -v node`; first argument = "$(npm root -g)/@kaka-creation/hamster-agent-client/src/cli.js", then '--env', 'dev', 'mcp'. Preserve other servers. OpenCode: opencode mcp add --global hamster-api -- "$(command -v node)" "$(npm root -g)/@kaka-creation/hamster-agent-client/src/cli.js" --env dev mcp
- Mac CLI JSON stdin: pipe one JSON value to `hamster --env dev ... --json-stdin` using a quoted shell heredoc; never copy PowerShell here-string syntax.
1. PREREQUISITES
$node = (Get-Command node.exe -CommandType Application -ErrorAction SilentlyContinue | Select-Object -First 1).Source
if (-not $node -or [version]((& $node --version).TrimStart('v')) -lt [version]'22.22.3') { throw 'Node.js 22.22.3+ required' }
- On failure: ask the user to install the official Node.js LTS (https://nodejs.org/en/download), reopen the terminal, retry.
- Never change the PowerShell execution policy. Use npm.cmd and absolute paths; never rely on PATH names or .ps1 shims.
2. INSTALL (only this verified artifact; never @latest, a registry name or another source)
$origin = 'https://hamster-dev-499710.web.app'
$m = Invoke-RestMethod "$origin/downloads/hamster-agent.json"
if ($m.path -cnotmatch '^/downloads/hamster-agent-[0-9a-f]{40}\.tgz$' -or $m.integrity -cnotmatch '^sha512-[A-Za-z0-9+/]+=*$') { throw 'Invalid manifest' }
$file = Join-Path $env:TEMP ('hamster-agent-' + [Guid]::NewGuid().ToString('N') + '.tgz')
Invoke-WebRequest -UseBasicParsing ($origin + $m.path) -OutFile $file
$sha = [Security.Cryptography.SHA512]::Create(); try { $actual = 'sha512-' + [Convert]::ToBase64String($sha.ComputeHash([IO.File]::ReadAllBytes($file))) } finally { $sha.Dispose() }
if ($actual -cne $m.integrity) { throw 'SHA-512 mismatch: do not install' } else { npm.cmd install --global --ignore-scripts $file }
$hamsterCli = Join-Path (npm.cmd root --global).Trim() '@kaka-creation\hamster-agent-client\src\cli.js'
if (-not (Test-Path -LiteralPath $hamsterCli -PathType Leaf)) { throw 'HAMSTER client not found' }
& $node $hamsterCli version
- In every new shell, re-run the $node and $hamsterCli lines before use.
3. LOGIN (the user must see and act)
& $node $hamsterCli --env dev login
- Run it in a terminal the user can see, or ask the user to run it there. Never run it hidden.
- The USER checks that the browser phrase matches the terminal, picks their HAMSTER Google account and approves. You never read, copy, store or send credentials, tokens or login URLs.
- Cancelled, timed out or stuck: Ctrl+C, then rerun (new phrase). Never reuse an old page or phrase.
4. CONNECT
- Register stdio MCP server hamster-api, command [absolute $node, absolute $hamsterCli, '--env', 'dev', 'mcp'], via your host's own MCP mechanism. Keep all other servers and settings; no env vars or credentials.
- OpenCode:
$opencode = @(Get-Command opencode.cmd, opencode.exe -CommandType Application -ErrorAction SilentlyContinue) | Select-Object -First 1
& $opencode.Source mcp add --global hamster-api -- $node $hamsterCli --env dev mcp
- Then reconnect only hamster-api (OpenCode: /mcps) or restart as your host requires; confirm hamster_* tools appear.
- Without MCP: use the CLI. Set $OutputEncoding = [System.Text.UTF8Encoding]::new($false); pipe JSON only as a single-quoted here-string to a command ending in --json-stdin.
5. BEFORE ANY GENERATION
& $node $hamsterCli --env dev doctor
& $node $hamsterCli --env dev projects
- doctor never generates. MCP tools mirror CLI commands (select-project = hamster_select_project). Login is CLI only.
- Determine the billing project from the user's request; ask only if ambiguous. Never join or create projects; if none, the user asks a HAMSTER admin.
- select-project that ID. Every submit includes top-level "expectedBillingProjectId" (outside body/path/query) = the intended project.
- Read live capabilities and the relevant *_config before choosing models or parameters; never assume.
- You act as the user in all their projects; generation is billed exactly like the HAMSTER web UI.
6. RULES
- New UUID requestId per new request; keep it. Unknown submit outcome (REQUEST_OUTCOME_UNKNOWN_NO_REPLAY, VAULT_LOCK_LOST, crash, timeout): never resend; use recover/status with the original projectId/requestId/workKind/Work ID.
- Save only to an absolute file path the user gave, in an existing folder; never overwrite (DESTINATION_EXISTS: ask for another name).
- Ctrl+C stops only local waiting; accepted Work continues and may be billed. cancel is a request, not a refund.
- Draft to final video is a separate billed request, only after the user picks the draft and asks.
- No admin or deletion operations. Never print or share tokens, signed URLs or login URLs.
7. UPDATE / REMOVE
- Normal update: the launcher verifies the published artifact and switches only between operations; no reinstall or MCP reconnect. Legacy clients without the launcher need a one-time step 2 installation and reconnection. Manual reinstall stops only processes sharing that installation on this PC. Login is kept.
- & $node $hamsterCli --env dev logout removes only this PC's local login. Lost or stolen PC: the user contacts a HAMSTER admin.
- WINDOWS ONLY - LEGACY_VAULT_LOCK_PRESENT: only after old clients sharing this OS user, vault and environment on this PC (including that user's other Windows sessions) are stopped, delete the empty lock directory (fails if not empty):
[IO.Directory]::Delete((Join-Path $env:LOCALAPPDATA 'HAMSTER\agent-client\dev.dpapi.lock'), $false)
Never delete dev.dpapi or anything else. Not empty or unsure: stop; the user contacts a HAMSTER admin.
- Uninstall: logout, remove only hamster-api from the host, then: npm.cmd uninstall --global @kaka-creation/hamster-agent-client
8. DETAILS
& $node $hamsterCli --env dev help
- For any feature, start with hamster_features: no arguments gives a compact overview without config reads; query searches by purpose, Japanese/English alias or model and reads only related configs in the selected project. Follow details.capability (group/name) for schema/config; operation remains shorthand for operations/name. Explain uses, model conditions, preparation, caveats and separate billing briefly in the user's language. Declared candidates are not verified availability; do not start generation to introduce a feature. If the tool is missing, consult hamster_catalog/hamster_capabilities and report the unverified path, not "unsupported". Follow error codes and nextAction.
- Optional internal reference for KaKa members (private source, see agent-client/README.md): https://github.com/KaKa-Creation/HAMSTER-firebase
Not required to install or use HAMSTER. If GitHub denies access, that is GitHub's valid access control, not a HAMSTER failure: do not retry with other accounts, ask for access, tokens or credentials; continue with this guide, help and hamster_capabilities.
社内向け参考: HAMSTERのソースコード(GitHub・非公開)。導入・利用には不要です。閲覧できない場合はGitHubの権限による制限で、HAMSTERの利用には影響しません。