에이전트 출력을 바로 클립으로 저장
좋은 답변 하나만 저장할 수도 있고, 중요한 결과를 Jade memory로 계속 보내둘 수도 있습니다.
Agent API v1
하나의 API 키로 외부 메모, 링크, 마크다운, 프로젝트를 Jade memory에 보낼 수 있습니다. 저장한 컨텍스트를 승인용 pages와 drafts로 연결하는 것도 같은 API로 시작할 수 있습니다.
curl https://thinkly.pluglab.ai/api/agent/clips \
-X POST \
-H 'Authorization: Bearer tk_your_api_key' \
-H 'Idempotency-Key: clip-001' \
-H 'Content-Type: application/json' \
-d '{
"title": "주간 인사이트",
"text": "오늘 리서치에서 남길 만한 최종 답변입니다."
}'좋은 답변 하나만 저장할 수도 있고, 중요한 결과를 Jade memory로 계속 보내둘 수도 있습니다.
관련 있는 항목들을 한 capture로 묶어 Jade가 나중에 다시 쓰기 쉽게 남길 수 있습니다.
먼저 컨텍스트를 페이지로 정리하고, 준비가 되면 Jade에게 드래프트를 만들게 하세요.
에이전트가 시작한 흐름을 Thinkly 프로젝트로 열고, 이후 정리는 제품 안에서 이어갈 수 있습니다.
Thinkly에 로그인한 뒤 Settings → API keys에서 scoped API 키를 만드세요.
모든 요청에 Bearer 토큰으로 키를 전달하고, write 요청에는 Idempotency-Key도 함께 넣으세요.
먼저 clip 또는 ingest 하나로 시작하고, 그 다음 Jade memory, pages, draft generation, upload, projects로 확장하세요.
Thinkly Agent API v1은 개인 API 키를 사용합니다. integration별 scoped key를 만들 수 있고, 서버 쪽에서만 보관하며 Bearer 토큰으로 전달해야 합니다.
curl https://thinkly.pluglab.ai/api/agent/clips \
-X POST \
-H 'Authorization: Bearer tk_your_api_key' \
-H 'Idempotency-Key: clip-001' \
-H 'Content-Type: application/json' \
-d '{
"title": "주간 인사이트",
"text": "오늘 리서치에서 남길 만한 최종 답변입니다."
}'Agent API도 제품과 같은 요금제 제한을 따릅니다. 별도 agent 전용 quota가 아니라, AI 작업은 같은 credit ledger를 사용합니다.
쓰기 요청은 Idempotency-Key를 지원합니다. 같은 요청을 같은 키로 다시 보내면 저장된 결과를 반환하고, 다른 body로 같은 키를 재사용하면 409를 반환합니다.
curl https://thinkly.pluglab.ai/api/agent/projects \
-X POST \
-H 'Authorization: Bearer tk_your_api_key' \
-H 'Idempotency-Key: project-2026-04-launch' \
-H 'Content-Type: application/json' \
-d '{
"name": "4월 런치 플랜",
"template": "goal_milestones"
}'/api/agent/clips메모, 링크, 저장할 답변 하나를 보낼 때 쓰면 됩니다.
{
"title": "저장할 답변",
"text": "다시 쓸 가치가 있는 최종 요약입니다.",
"tags": ["research", "launch"]
}/api/agent/ingest텍스트, URL, 마크다운을 한 번에 보내고 같은 capture로 묶어둘 수 있습니다.
{
"items": [
{ "type": "url", "url": "https://example.com/article" },
{ "type": "markdown", "title": "메모", "text": "# 핵심\n- 하나\n- 둘" }
]
}/api/agent/upload에이전트가 파일 첨부를 보내야 할 때도 같은 Agent API 표면에서 multipart 업로드를 처리할 수 있습니다.
curl https://thinkly.pluglab.ai/api/agent/upload \
-H 'Authorization: Bearer tk_your_api_key' \
-H 'Idempotency-Key: upload-001' \
-F 'file=@notes.md'/api/agent/pages/:id/generate저장한 clip들을 page로 정리한 뒤, 그 page를 바탕으로 초안을 생성할 때 사용합니다.
{
"mode": "custom",
"prompt": "이 페이지를 발행 가능한 짧은 브리프로 바꿔주세요."
}/api/agent/projects이름, 템플릿, 상태를 포함해 외부 에이전트에서 Thinkly 프로젝트를 열 수 있습니다.
{
"name": "4월 런치 플랜",
"template": "goal_milestones",
"icon": "🚀"
}/api/agent/projects/:id/items에이전트 워크플로에서 clip, page, draft, published 항목을 Thinkly 프로젝트 stage에 바로 넣습니다.
{
"stage": "clip",
"referenceId": "clip_123"
}Agent API v1은 성공과 실패를 같은 envelope으로 반환해서, 에이전트가 일관되게 처리할 수 있게 합니다.
{
"success": true,
"data": {
"id": "clip_123",
"title": "저장할 답변"
},
"error": null
}OpenClaw gateway가 이미 있고 그 결과를 Jade에게 보내야 한다면, 직접 API 클라이언트를 짜기 전에 ready-made 흐름을 쓰면 됩니다.
OpenClaw 가이드 열기Hermes나 자체 에이전트가 Jade에게 clips, batch ingest, pages, projects를 직접 보내야 한다면 Agent API v1로 가는 게 맞습니다.
랜딩 개요 보기각 엔드포인트를 펼치면 request body, response 예제, 추천 사용 맥락을 바로 볼 수 있습니다.
/api/agent/clips클립 하나 저장{
"title": "저장할 답변",
"text": "다시 쓸 가치가 있는 최종 요약입니다.",
"tags": ["research", "launch"]
}{
"success": true,
"data": {
"id": "clip_123",
"title": "저장할 답변",
"text": "다시 쓸 가치가 있는 최종 요약입니다."
},
"error": null
}/api/agent/ingest배치 ingest{
"items": [
{ "type": "url", "url": "https://example.com/article" },
{ "type": "markdown", "title": "메모", "text": "# 핵심\n- 하나\n- 둘" }
]
}{
"success": true,
"data": {
"captureBatchId": "batch_123",
"created": [
{ "id": "clip_1", "title": "https://example.com/article", "url": "https://example.com/article" },
{ "id": "clip_2", "title": "메모", "url": null }
],
"failed": []
},
"error": null
}/api/agent/upload에이전트 facade로 파일 업로드curl https://thinkly.pluglab.ai/api/agent/upload \
-H 'Authorization: Bearer tk_your_api_key' \
-H 'Idempotency-Key: upload-001' \
-F 'file=@notes.md'{
"success": true,
"data": {
"id": "clip_upload_123",
"title": "notes.md"
},
"error": null
}/api/agent/pages/:id/generate페이지에서 드래프트 생성{
"mode": "custom",
"prompt": "이 페이지를 발행 가능한 짧은 브리프로 바꿔주세요."
}{
"success": true,
"data": {
"jobId": "draft_123",
"type": "page_generation",
"status": "completed",
"result": {
"draftId": "draft_123"
}
},
"error": null
}/api/agent/projects프로젝트 생성{
"name": "4월 런치 플랜",
"template": "goal_milestones",
"icon": "🚀"
}{
"success": true,
"data": {
"id": "project_123",
"name": "4월 런치 플랜",
"template": "goal_milestones"
},
"error": null
}/api/agent/projects/:id/items프로젝트 stage에 아이템 추가{
"stage": "clip",
"referenceId": "clip_123"
}{
"success": true,
"data": {
"id": "project_item_123",
"stage": "clip",
"referenceId": "clip_123"
},
"error": null
}가장 좋은 첫 연동은 단순합니다. 저장할 답변 하나, 링크 하나, 마크다운 메모 하나를 Thinkly에 보내고, 그 결과를 pages와 Jade drafts로 이어가세요.