{"schema_version":"onlylabs.public_signal.v1","title":"DigitalOcean (GradientAI) Repo: digitalocean/ghost-writer","description":"DigitalOcean (GradientAI) repo signal with public source context, captured evidence pages, related signals, and category-scoped analysis context.","url":"https://onlylabs.fyi/signals/4790b09e-f8e8-4648-859c-8f88e3b11a51","json_url":"https://onlylabs.fyi/signals/4790b09e-f8e8-4648-859c-8f88e3b11a51/signal.json","generated_at":"2026-06-11T02:52:43.116306+00:00","org":{"slug":"digitalocean","name":"DigitalOcean (GradientAI)","category":"neocloud","category_label":"Neocloud","dossier_url":"https://onlylabs.fyi/labs/digitalocean","dossier_json_url":"https://onlylabs.fyi/labs/digitalocean/dossier.json"},"related_urls":{"signal":"https://onlylabs.fyi/signals/4790b09e-f8e8-4648-859c-8f88e3b11a51","signal_json":"https://onlylabs.fyi/signals/4790b09e-f8e8-4648-859c-8f88e3b11a51/signal.json","source":"https://github.com/digitalocean/ghost-writer","lab_dossier":"https://onlylabs.fyi/labs/digitalocean","lab_dossier_json":"https://onlylabs.fyi/labs/digitalocean/dossier.json","analysis":"https://onlylabs.fyi/analysis/digitalocean","analysis_json":"https://onlylabs.fyi/analysis/digitalocean/analysis.json","analysis_evidence_json":"https://onlylabs.fyi/analysis/digitalocean/evidence.json","category":"https://onlylabs.fyi/neoclouds","category_json":"https://onlylabs.fyi/neoclouds.json","category_feed":"https://onlylabs.fyi/neoclouds/feed.xml","category_signals_json":"https://onlylabs.fyi/signals.json?category=neocloud","topic":null,"topic_signals_json":null,"topic_feed":null,"data_business":null},"answer_pack":{"answer":"DigitalOcean (GradientAI) published digitalocean/ghost-writer (Python). This repository signal exposes tooling, eval, infrastructure, or model-adjacent work before it may appear in a launch post. High-signal details: repo digitalocean/ghost-writer · language Python · Low stars, routine repo release. onlylabs links this event to 1 captured evidence page and 6 related repo signals.","signal_desk":"repos","source_context":{"source_url":"https://github.com/digitalocean/ghost-writer","source_host":"github.com","occurred_at":"2026-03-05T21:09:49+00:00","first_seen_at":"2026-06-05T22:32:20.223218+00:00","date_source":"source","context":"Python"},"context_markers":[{"label":"Lab","value":"DigitalOcean (GradientAI)","source":"signal"},{"label":"Signal desk","value":"repos","source":"signal"},{"label":"Source host","value":"github.com","source":"source"},{"label":"Repository","value":"digitalocean/ghost-writer","source":"source"},{"label":"Language","value":"Python","source":"source"},{"label":"Stars","value":"4","source":"traction"},{"label":"Notability","value":"Low stars, routine repo release","source":"signal"},{"label":"Watch term","value":"Infrastructure","source":"evidence"},{"label":"Watch term","value":"Safety and alignment","source":"evidence"},{"label":"Watch term","value":"Agents and tool use","source":"evidence"}],"evidence_coverage":{"target_pages":1,"captured_pages":1,"readable_pages":1,"capture_methods":["plain"],"missing_page_urls":[],"failed_page_urls":[],"blocked_page_urls":[],"page_urls":["https://github.com/digitalocean/ghost-writer"],"related_signals":6,"has_source_url":true,"latest_page_fetched_at":"2026-06-11T02:52:43.116306+00:00"},"data_business":{"matches":false,"lanes":[],"matched_terms":[],"score":null,"reason":null},"agent_handoff":{"signal_json":"https://onlylabs.fyi/signals/4790b09e-f8e8-4648-859c-8f88e3b11a51/signal.json","dossier_json":"https://onlylabs.fyi/labs/digitalocean/dossier.json","analysis_json":"https://onlylabs.fyi/analysis/digitalocean/analysis.json","analysis_evidence_json":"https://onlylabs.fyi/analysis/digitalocean/evidence.json","topic_signals_json":null,"topic_feed":null,"category_signals_json":"https://onlylabs.fyi/signals.json?category=neocloud","data_radar_json":null,"opportunities_json":null},"analysis_playbook":{"objective":"Turn new repository signals into early evidence of tooling, eval, infrastructure, model-adjacent, or product work before it appears in polished launch channels.","evidence_focus":["repo name","owner","description","language","stars","source URL","first seen time","data, eval, infra, safety, and product terms"],"extraction_questions":["What technical area does this repository expose?","Does the repo imply eval, data, infrastructure, agent, or deployment work?","Is the repo new evidence for a lab direction that is not yet in writing or releases?","Which related signals should an analyst inspect next?"],"signal_questions":["What does this new repository reveal before a formal announcement exists?","What technical area does this repository expose?","Does the repo imply eval, data, infrastructure, agent, or deployment work?","Do the 6 related repo signals show a repeated pattern?"],"output_fields":["org","repo","technical_theme","evidence_url"],"data_business_relevance":"Data-business lane extraction is scoped to frontier labs; for this category, interpret the repository as source-grounded category strategy evidence.","required_sources":[{"label":"signal_json","url":"https://onlylabs.fyi/signals/4790b09e-f8e8-4648-859c-8f88e3b11a51/signal.json","required":true},{"label":"source","url":"https://github.com/digitalocean/ghost-writer","required":true},{"label":"dossier_json","url":"https://onlylabs.fyi/labs/digitalocean/dossier.json","required":true},{"label":"analysis_evidence_json","url":"https://onlylabs.fyi/analysis/digitalocean/evidence.json","required":true},{"label":"topic_signals_json","url":null,"required":false},{"label":"data_radar_json","url":null,"required":false}],"expected_output":["one-paragraph source-grounded interpretation","category-specific implication","confidence and missing evidence","recommended next source to inspect"],"prompt_seed":"Using only the linked onlylabs JSON, captured source context, and cited evidence, analyze DigitalOcean (GradientAI)'s repo signal \"digitalocean/ghost-writer\" for neocloud strategy."},"semantic_triples":[{"subject":"DigitalOcean (GradientAI)","predicate":"published repo","object":"digitalocean/ghost-writer","text":"DigitalOcean (GradientAI) published repo digitalocean/ghost-writer."},{"subject":"digitalocean/ghost-writer","predicate":"is classified as","object":"repo signal","text":"digitalocean/ghost-writer is classified as repo signal."},{"subject":"digitalocean/ghost-writer","predicate":"belongs to","object":"repos desk","text":"digitalocean/ghost-writer belongs to repos desk."},{"subject":"digitalocean/ghost-writer","predicate":"has context","object":"Python","text":"digitalocean/ghost-writer has context Python."},{"subject":"digitalocean/ghost-writer","predicate":"has evidence coverage","object":"1 captured evidence page","text":"digitalocean/ghost-writer has evidence coverage 1 captured evidence page."},{"subject":"digitalocean/ghost-writer","predicate":"has captured page count","object":"1","text":"digitalocean/ghost-writer has captured page count 1."},{"subject":"digitalocean/ghost-writer","predicate":"has readable page count","object":"1","text":"digitalocean/ghost-writer has readable page count 1."},{"subject":"digitalocean/ghost-writer","predicate":"has related signal count","object":"6","text":"digitalocean/ghost-writer has related signal count 6."},{"subject":"digitalocean/ghost-writer","predicate":"has analysis playbook objective","object":"Turn new repository signals into early evidence of tooling, eval, infrastructure, model-adjacent, or product work before it appears in polished launch channels.","text":"digitalocean/ghost-writer has analysis playbook objective Turn new repository signals into early evidence of tooling, eval, infrastructure, model-adjacent, or product work before it appears in polished launch channels.."},{"subject":"digitalocean/ghost-writer","predicate":"has source host","object":"github.com","text":"digitalocean/ghost-writer has source host github.com."},{"subject":"digitalocean/ghost-writer","predicate":"has lab","object":"DigitalOcean (GradientAI)","text":"digitalocean/ghost-writer has lab DigitalOcean (GradientAI)."},{"subject":"digitalocean/ghost-writer","predicate":"has signal desk","object":"repos","text":"digitalocean/ghost-writer has signal desk repos."},{"subject":"digitalocean/ghost-writer","predicate":"has source host","object":"github.com","text":"digitalocean/ghost-writer has source host github.com."},{"subject":"digitalocean/ghost-writer","predicate":"has repository","object":"digitalocean/ghost-writer","text":"digitalocean/ghost-writer has repository digitalocean/ghost-writer."},{"subject":"digitalocean/ghost-writer","predicate":"has language","object":"Python","text":"digitalocean/ghost-writer has language Python."},{"subject":"digitalocean/ghost-writer","predicate":"has stars","object":"4","text":"digitalocean/ghost-writer has stars 4."},{"subject":"digitalocean/ghost-writer","predicate":"has notability","object":"Low stars, routine repo release","text":"digitalocean/ghost-writer has notability Low stars, routine repo release."},{"subject":"digitalocean/ghost-writer","predicate":"has watch term","object":"Infrastructure","text":"digitalocean/ghost-writer has watch term Infrastructure."}]},"intelligence":{"signal_desk":"repos","answer":"DigitalOcean (GradientAI) published digitalocean/ghost-writer (Python). This repository signal exposes tooling, eval, infrastructure, or model-adjacent work before it may appear in a launch post. High-signal details: repo digitalocean/ghost-writer · language Python · Low stars, routine repo release. onlylabs links this event to 1 captured evidence page and 6 related repo signals.","semantic_triples":[{"subject":"DigitalOcean (GradientAI)","predicate":"published repo","object":"digitalocean/ghost-writer","text":"DigitalOcean (GradientAI) published repo digitalocean/ghost-writer."},{"subject":"digitalocean/ghost-writer","predicate":"is classified as","object":"repo signal","text":"digitalocean/ghost-writer is classified as repo signal."},{"subject":"digitalocean/ghost-writer","predicate":"belongs to","object":"repos desk","text":"digitalocean/ghost-writer belongs to repos desk."},{"subject":"digitalocean/ghost-writer","predicate":"has context","object":"Python","text":"digitalocean/ghost-writer has context Python."},{"subject":"digitalocean/ghost-writer","predicate":"has evidence coverage","object":"1 captured evidence page","text":"digitalocean/ghost-writer has evidence coverage 1 captured evidence page."}]},"signal":{"id":"4790b09e-f8e8-4648-859c-8f88e3b11a51","url":"https://onlylabs.fyi/signals/4790b09e-f8e8-4648-859c-8f88e3b11a51","json_url":"https://onlylabs.fyi/signals/4790b09e-f8e8-4648-859c-8f88e3b11a51/signal.json","source_url":"https://github.com/digitalocean/ghost-writer","title":"digitalocean/ghost-writer","summary":"DigitalOcean (GradientAI) published a new repository. onlylabs watches repos for tooling, eval, infra, and model-adjacent work.","context":"Python","kind":{"key":"repo_new","label":"Repo"},"org":{"slug":"digitalocean","name":"DigitalOcean (GradientAI)","category":"neocloud"},"occurred_at":"2026-03-05T21:09:49+00:00","first_seen_at":"2026-06-05T22:32:20.223218+00:00","date_source":"source","evidence_coverage":{"target_pages":1,"captured_pages":1,"readable_pages":1,"capture_methods":["plain"],"missing_page_urls":[],"failed_page_urls":[],"blocked_page_urls":[],"page_urls":["https://github.com/digitalocean/ghost-writer"]},"facets":{"repo":"digitalocean/ghost-writer","language":"Python"},"traction":{"github_stars":4,"hn_points":null,"hn_comments":null,"hn_story_id":null,"hf_downloads":null,"hf_likes":null},"data_radar":null},"primary_evidence_page":{"url":"https://github.com/digitalocean/ghost-writer","final_url":"https://github.com/digitalocean/ghost-writer","title":"digitalocean/ghost-writer repository metadata","http_status":200,"content_type":"application/json","capture_method":"plain","fetched_at":"2026-06-11T02:52:43.116306+00:00","bytes":13907,"raw_path":"031359f95711ae40e7faf0e41aa3b11cf8bc1674f70240d36113f7a2231ab6c1.json","content_hash":"93689c9b9fb176785926ab70a1587c80b12e9fc62f95125c36d811e4491529f1","excerpt_chars":1200,"truncated":true,"excerpt":"digitalocean/ghost-writer Description: Agentic Blogging Language: Python Stars: 4 Forks: 0 Open issues: 5 Created: 2026-03-05T21:09:49Z Pushed: 2026-05-13T16:30:54Z Default branch: master Fork: no Archived: no README: Ghost Writer Agent An AI-powered blog writing agent that researches topics, writes articles, and publishes to Ghost or WordPress. It operates in two modes: **Autonomous Mode** (default), where it generates and publishes posts on a schedule with no human interaction, and **Chat Mode**, where you brainstorm ideas, review drafts, and approve posts through a web UI. How It Works Ghost Writer uses a LangChain agent backed by an LLM (via DigitalOcean's Gradient API) to write blog posts. The agent has access to two tools: - **search_web** -- Searches the web via DuckDuckGo to gather current information and data points for articles. - **publish_to_blog** -- Publishes a post to your Ghost or WordPress blog. Draft content is automatically captured from the LLM's response, so the model only needs to pass the title and tags. The server runs on FastAPI with an APScheduler background job for autonomous publishing. Modes Autonomous Mode (default) When `ENABLE_CHAT` is `false` (the..."},"evidence_pages":[{"url":"https://github.com/digitalocean/ghost-writer","final_url":"https://github.com/digitalocean/ghost-writer","title":"digitalocean/ghost-writer repository metadata","http_status":200,"content_type":"application/json","capture_method":"plain","fetched_at":"2026-06-11T02:52:43.116306+00:00","bytes":13907,"raw_path":"031359f95711ae40e7faf0e41aa3b11cf8bc1674f70240d36113f7a2231ab6c1.json","content_hash":"93689c9b9fb176785926ab70a1587c80b12e9fc62f95125c36d811e4491529f1","excerpt_chars":1200,"truncated":true,"excerpt":"digitalocean/ghost-writer Description: Agentic Blogging Language: Python Stars: 4 Forks: 0 Open issues: 5 Created: 2026-03-05T21:09:49Z Pushed: 2026-05-13T16:30:54Z Default branch: master Fork: no Archived: no README: Ghost Writer Agent An AI-powered blog writing agent that researches topics, writes articles, and publishes to Ghost or WordPress. It operates in two modes: **Autonomous Mode** (default), where it generates and publishes posts on a schedule with no human interaction, and **Chat Mode**, where you brainstorm ideas, review drafts, and approve posts through a web UI. How It Works Ghost Writer uses a LangChain agent backed by an LLM (via DigitalOcean's Gradient API) to write blog posts. The agent has access to two tools: - **search_web** -- Searches the web via DuckDuckGo to gather current information and data points for articles. - **publish_to_blog** -- Publishes a post to your Ghost or WordPress blog. Draft content is automatically captured from the LLM's response, so the model only needs to pass the title and tags. The server runs on FastAPI with an APScheduler background job for autonomous publishing. Modes Autonomous Mode (default) When `ENABLE_CHAT` is `false` (the..."}],"related_signals":[{"id":"7cf603e5-7aaa-443e-8792-566af123b670","url":"https://onlylabs.fyi/signals/7cf603e5-7aaa-443e-8792-566af123b670","source_url":"https://github.com/digitalocean/New-App-Management-UXNext","title":"digitalocean/New-App-Management-UXNext","context":"HTML","kind":{"key":"repo_new","label":"Repo"},"org":{"slug":"digitalocean","name":"DigitalOcean (GradientAI)","category":"neocloud"},"occurred_at":"2026-04-15T14:45:12+00:00","first_seen_at":"2026-06-05T22:32:20.223218+00:00","date_source":"source"},{"id":"98a9cadb-d9fd-4be9-84e5-bcd301db368d","url":"https://onlylabs.fyi/signals/98a9cadb-d9fd-4be9-84e5-bcd301db368d","source_url":"https://github.com/digitalocean/AI-Assistant-Entry-Point-UXNext","title":"digitalocean/AI-Assistant-Entry-Point-UXNext","context":"HTML","kind":{"key":"repo_new","label":"Repo"},"org":{"slug":"digitalocean","name":"DigitalOcean (GradientAI)","category":"neocloud"},"occurred_at":"2026-04-14T22:54:33+00:00","first_seen_at":"2026-06-05T22:32:20.223218+00:00","date_source":"source"},{"id":"67ed6cab-63e2-4154-8525-ce7b6eb69b8a","url":"https://onlylabs.fyi/signals/67ed6cab-63e2-4154-8525-ce7b6eb69b8a","source_url":"https://github.com/digitalocean/AI-Assistant-Intent-Platform-UXNext","title":"digitalocean/AI-Assistant-Intent-Platform-UXNext","context":"HTML","kind":{"key":"repo_new","label":"Repo"},"org":{"slug":"digitalocean","name":"DigitalOcean (GradientAI)","category":"neocloud"},"occurred_at":"2026-04-12T15:23:07+00:00","first_seen_at":"2026-06-05T22:32:20.223218+00:00","date_source":"source"},{"id":"ec768c0c-e594-419a-97a8-c39531ee204a","url":"https://onlylabs.fyi/signals/ec768c0c-e594-419a-97a8-c39531ee204a","source_url":"https://github.com/digitalocean/Onboarding_Q2_2026_Proposal_UXNext","title":"digitalocean/Onboarding_Q2_2026_Proposal_UXNext","context":"HTML","kind":{"key":"repo_new","label":"Repo"},"org":{"slug":"digitalocean","name":"DigitalOcean (GradientAI)","category":"neocloud"},"occurred_at":"2026-04-12T14:43:57+00:00","first_seen_at":"2026-06-05T22:32:20.223218+00:00","date_source":"source"},{"id":"2fa362ee-ee05-4f79-bf80-98b589661076","url":"https://onlylabs.fyi/signals/2fa362ee-ee05-4f79-bf80-98b589661076","source_url":"https://github.com/digitalocean/ShellPort","title":"digitalocean/ShellPort","context":"JavaScript","kind":{"key":"repo_new","label":"Repo"},"org":{"slug":"digitalocean","name":"DigitalOcean (GradientAI)","category":"neocloud"},"occurred_at":"2026-03-26T19:30:33+00:00","first_seen_at":"2026-06-05T22:32:20.223218+00:00","date_source":"source"},{"id":"eae0d662-1749-4d8f-ac54-eece907fe398","url":"https://onlylabs.fyi/signals/eae0d662-1749-4d8f-ac54-eece907fe398","source_url":"https://github.com/digitalocean/do-obsd","title":"digitalocean/do-obsd","context":"Shell","kind":{"key":"repo_new","label":"Repo"},"org":{"slug":"digitalocean","name":"DigitalOcean (GradientAI)","category":"neocloud"},"occurred_at":"2026-03-26T01:37:24+00:00","first_seen_at":"2026-06-05T22:32:20.223218+00:00","date_source":"source"}]}