synthos 0.7.1 → 0.8.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.
Files changed (263) hide show
  1. package/README.md +215 -65
  2. package/default-pages/application.json +1 -0
  3. package/default-pages/json_tools.json +1 -1
  4. package/default-pages/oregon_trail.html +321 -0
  5. package/default-pages/oregon_trail.json +12 -0
  6. package/default-pages/sidebar_page.json +1 -0
  7. package/default-pages/solar_explorer.html +10 -18
  8. package/default-pages/solar_explorer.json +2 -2
  9. package/default-pages/two-panel_page.json +1 -0
  10. package/default-pages/us_map.html +192 -0
  11. package/default-pages/us_map.json +12 -0
  12. package/default-pages/us_map_1850.html +325 -0
  13. package/default-pages/us_map_1850.json +12 -0
  14. package/default-pages/western_cities_1850.html +526 -0
  15. package/default-pages/western_cities_1850.json +12 -0
  16. package/default-themes/{nebula-dawn.css → nebula-dawn.v2.css} +24 -0
  17. package/default-themes/{nebula-dusk.css → nebula-dusk.v2.css} +24 -0
  18. package/dist/agents/a2a/a2aProvider.d.ts +3 -0
  19. package/dist/agents/a2a/a2aProvider.d.ts.map +1 -0
  20. package/dist/agents/a2a/a2aProvider.js +126 -0
  21. package/dist/agents/a2a/a2aProvider.js.map +1 -0
  22. package/dist/agents/discovery.d.ts +30 -0
  23. package/dist/agents/discovery.d.ts.map +1 -0
  24. package/dist/agents/discovery.js +52 -0
  25. package/dist/agents/discovery.js.map +1 -0
  26. package/dist/agents/index.d.ts +7 -0
  27. package/dist/agents/index.d.ts.map +1 -0
  28. package/dist/agents/index.js +19 -0
  29. package/dist/agents/index.js.map +1 -0
  30. package/dist/agents/openclaw/gatewayManager.d.ts +113 -0
  31. package/dist/agents/openclaw/gatewayManager.d.ts.map +1 -0
  32. package/dist/agents/openclaw/gatewayManager.js +470 -0
  33. package/dist/agents/openclaw/gatewayManager.js.map +1 -0
  34. package/dist/agents/openclaw/openclawProvider.d.ts +3 -0
  35. package/dist/agents/openclaw/openclawProvider.d.ts.map +1 -0
  36. package/dist/agents/openclaw/openclawProvider.js +239 -0
  37. package/dist/agents/openclaw/openclawProvider.js.map +1 -0
  38. package/dist/agents/openclaw/sshTunnelManager.d.ts +23 -0
  39. package/dist/agents/openclaw/sshTunnelManager.d.ts.map +1 -0
  40. package/dist/agents/openclaw/sshTunnelManager.js +340 -0
  41. package/dist/agents/openclaw/sshTunnelManager.js.map +1 -0
  42. package/dist/agents/types.d.ts +64 -0
  43. package/dist/agents/types.d.ts.map +1 -0
  44. package/dist/agents/types.js +6 -0
  45. package/dist/agents/types.js.map +1 -0
  46. package/dist/connectors/airtable/connector.json +27 -0
  47. package/dist/connectors/alpha-vantage/connector.json +26 -0
  48. package/dist/connectors/brave-search/connector.json +26 -0
  49. package/dist/connectors/cloudinary/connector.json +27 -0
  50. package/dist/connectors/deepl/connector.json +28 -0
  51. package/dist/connectors/elevenlabs/connector.json +30 -0
  52. package/dist/connectors/giphy/connector.json +27 -0
  53. package/dist/connectors/github/connector.json +29 -0
  54. package/dist/connectors/huggingface/connector.json +27 -0
  55. package/dist/connectors/imgur/connector.json +29 -0
  56. package/dist/connectors/index.d.ts +1 -1
  57. package/dist/connectors/index.d.ts.map +1 -1
  58. package/dist/connectors/instagram/connector.json +43 -0
  59. package/dist/connectors/jira/connector.json +28 -0
  60. package/dist/connectors/mapbox/connector.json +26 -0
  61. package/dist/connectors/nasa/connector.json +27 -0
  62. package/dist/connectors/newsapi/connector.json +27 -0
  63. package/dist/connectors/notion/connector.json +28 -0
  64. package/dist/connectors/open-exchange-rates/connector.json +27 -0
  65. package/dist/connectors/openweathermap/connector.json +26 -0
  66. package/dist/connectors/pexels/connector.json +27 -0
  67. package/dist/connectors/registry.d.ts.map +1 -1
  68. package/dist/connectors/registry.js +42 -96
  69. package/dist/connectors/registry.js.map +1 -1
  70. package/dist/connectors/resend/connector.json +29 -0
  71. package/dist/connectors/rss2json/connector.json +27 -0
  72. package/dist/connectors/sendgrid/connector.json +27 -0
  73. package/dist/connectors/spoonacular/connector.json +28 -0
  74. package/dist/connectors/stability-ai/connector.json +27 -0
  75. package/dist/connectors/twilio/connector.json +28 -0
  76. package/dist/connectors/types.d.ts +23 -0
  77. package/dist/connectors/types.d.ts.map +1 -1
  78. package/dist/connectors/unsplash/connector.json +27 -0
  79. package/dist/connectors/wolfram-alpha/connector.json +26 -0
  80. package/dist/connectors/youtube-data/connector.json +30 -0
  81. package/dist/files.d.ts +1 -0
  82. package/dist/files.d.ts.map +1 -1
  83. package/dist/files.js +16 -1
  84. package/dist/files.js.map +1 -1
  85. package/dist/init.d.ts.map +1 -1
  86. package/dist/init.js +28 -0
  87. package/dist/init.js.map +1 -1
  88. package/dist/migrations.d.ts +3 -2
  89. package/dist/migrations.d.ts.map +1 -1
  90. package/dist/migrations.js +122 -138
  91. package/dist/migrations.js.map +1 -1
  92. package/dist/models/anthropic.d.ts +22 -0
  93. package/dist/models/anthropic.d.ts.map +1 -0
  94. package/dist/models/anthropic.js +76 -0
  95. package/dist/models/anthropic.js.map +1 -0
  96. package/dist/models/chainOfThought.d.ts +12 -0
  97. package/dist/models/chainOfThought.d.ts.map +1 -0
  98. package/dist/models/chainOfThought.js +45 -0
  99. package/dist/models/chainOfThought.js.map +1 -0
  100. package/dist/models/fireworksai.d.ts +30 -0
  101. package/dist/models/fireworksai.d.ts.map +1 -0
  102. package/dist/models/fireworksai.js +133 -0
  103. package/dist/models/fireworksai.js.map +1 -0
  104. package/dist/models/index.d.ts +7 -1
  105. package/dist/models/index.d.ts.map +1 -1
  106. package/dist/models/index.js +19 -1
  107. package/dist/models/index.js.map +1 -1
  108. package/dist/models/logCompletePrompt.d.ts +3 -0
  109. package/dist/models/logCompletePrompt.d.ts.map +1 -0
  110. package/dist/models/logCompletePrompt.js +23 -0
  111. package/dist/models/logCompletePrompt.js.map +1 -0
  112. package/dist/models/openai.d.ts +24 -0
  113. package/dist/models/openai.d.ts.map +1 -0
  114. package/dist/models/openai.js +80 -0
  115. package/dist/models/openai.js.map +1 -0
  116. package/dist/models/providers.d.ts +1 -0
  117. package/dist/models/providers.d.ts.map +1 -1
  118. package/dist/models/providers.js +12 -4
  119. package/dist/models/providers.js.map +1 -1
  120. package/dist/models/types.d.ts +34 -2
  121. package/dist/models/types.d.ts.map +1 -1
  122. package/dist/models/types.js +16 -0
  123. package/dist/models/types.js.map +1 -1
  124. package/dist/models/utils.d.ts +6 -0
  125. package/dist/models/utils.d.ts.map +1 -0
  126. package/dist/models/utils.js +21 -0
  127. package/dist/models/utils.js.map +1 -0
  128. package/dist/scripts.d.ts +2 -1
  129. package/dist/scripts.d.ts.map +1 -1
  130. package/dist/scripts.js +4 -3
  131. package/dist/scripts.js.map +1 -1
  132. package/dist/service/createCompletePrompt.d.ts +1 -1
  133. package/dist/service/createCompletePrompt.d.ts.map +1 -1
  134. package/dist/service/createCompletePrompt.js +9 -6
  135. package/dist/service/createCompletePrompt.js.map +1 -1
  136. package/dist/service/generateImage.d.ts +1 -1
  137. package/dist/service/generateImage.d.ts.map +1 -1
  138. package/dist/service/generateImage.js +3 -3
  139. package/dist/service/generateImage.js.map +1 -1
  140. package/dist/service/server.d.ts.map +1 -1
  141. package/dist/service/server.js +3 -0
  142. package/dist/service/server.js.map +1 -1
  143. package/dist/service/transformPage.d.ts +4 -2
  144. package/dist/service/transformPage.d.ts.map +1 -1
  145. package/dist/service/transformPage.js +74 -6
  146. package/dist/service/transformPage.js.map +1 -1
  147. package/dist/service/useAgentRoutes.d.ts +4 -0
  148. package/dist/service/useAgentRoutes.d.ts.map +1 -0
  149. package/dist/service/useAgentRoutes.js +389 -0
  150. package/dist/service/useAgentRoutes.js.map +1 -0
  151. package/dist/service/useApiRoutes.d.ts.map +1 -1
  152. package/dist/service/useApiRoutes.js +157 -16
  153. package/dist/service/useApiRoutes.js.map +1 -1
  154. package/dist/service/useConnectorRoutes.d.ts.map +1 -1
  155. package/dist/service/useConnectorRoutes.js +14 -3
  156. package/dist/service/useConnectorRoutes.js.map +1 -1
  157. package/dist/service/useGatewayRoutes.d.ts +4 -0
  158. package/dist/service/useGatewayRoutes.d.ts.map +1 -0
  159. package/dist/service/useGatewayRoutes.js +168 -0
  160. package/dist/service/useGatewayRoutes.js.map +1 -0
  161. package/dist/service/usePageRoutes.d.ts.map +1 -1
  162. package/dist/service/usePageRoutes.js +16 -5
  163. package/dist/service/usePageRoutes.js.map +1 -1
  164. package/dist/settings.d.ts +2 -1
  165. package/dist/settings.d.ts.map +1 -1
  166. package/dist/settings.js +4 -8
  167. package/dist/settings.js.map +1 -1
  168. package/dist/themes.d.ts +14 -0
  169. package/dist/themes.d.ts.map +1 -1
  170. package/dist/themes.js +86 -13
  171. package/dist/themes.js.map +1 -1
  172. package/package.json +10 -5
  173. package/page-scripts/helpers-v2.js +222 -0
  174. package/page-scripts/page-v2.js +656 -0
  175. package/required-pages/builder.html +1 -27
  176. package/required-pages/pages.html +745 -22
  177. package/required-pages/settings.html +819 -21
  178. package/required-pages/synthos_apis.html +56 -1
  179. package/src/agents/a2a/a2aProvider.ts +110 -0
  180. package/src/agents/discovery.ts +74 -0
  181. package/src/agents/index.ts +6 -0
  182. package/src/agents/openclaw/gatewayManager.ts +559 -0
  183. package/src/agents/openclaw/openclawProvider.ts +261 -0
  184. package/src/agents/openclaw/sshTunnelManager.ts +385 -0
  185. package/src/agents/types.ts +82 -0
  186. package/src/connectors/airtable/connector.json +27 -0
  187. package/src/connectors/alpha-vantage/connector.json +26 -0
  188. package/src/connectors/brave-search/connector.json +26 -0
  189. package/src/connectors/cloudinary/connector.json +27 -0
  190. package/src/connectors/deepl/connector.json +28 -0
  191. package/src/connectors/elevenlabs/connector.json +30 -0
  192. package/src/connectors/giphy/connector.json +27 -0
  193. package/src/connectors/github/connector.json +29 -0
  194. package/src/connectors/huggingface/connector.json +27 -0
  195. package/src/connectors/imgur/connector.json +29 -0
  196. package/src/connectors/index.ts +2 -0
  197. package/src/connectors/instagram/connector.json +43 -0
  198. package/src/connectors/jira/connector.json +28 -0
  199. package/src/connectors/mapbox/connector.json +26 -0
  200. package/src/connectors/nasa/connector.json +27 -0
  201. package/src/connectors/newsapi/connector.json +27 -0
  202. package/src/connectors/notion/connector.json +28 -0
  203. package/src/connectors/open-exchange-rates/connector.json +27 -0
  204. package/src/connectors/openweathermap/connector.json +26 -0
  205. package/src/connectors/pexels/connector.json +27 -0
  206. package/src/connectors/registry.ts +21 -97
  207. package/src/connectors/resend/connector.json +29 -0
  208. package/src/connectors/rss2json/connector.json +27 -0
  209. package/src/connectors/sendgrid/connector.json +27 -0
  210. package/src/connectors/spoonacular/connector.json +28 -0
  211. package/src/connectors/stability-ai/connector.json +27 -0
  212. package/src/connectors/twilio/connector.json +28 -0
  213. package/src/connectors/types.ts +25 -0
  214. package/src/connectors/unsplash/connector.json +27 -0
  215. package/src/connectors/wolfram-alpha/connector.json +26 -0
  216. package/src/connectors/youtube-data/connector.json +30 -0
  217. package/src/files.ts +14 -0
  218. package/src/init.ts +27 -0
  219. package/src/migrations.ts +121 -138
  220. package/src/models/anthropic.ts +89 -0
  221. package/src/models/chainOfThought.ts +56 -0
  222. package/src/models/fireworksai.ts +136 -0
  223. package/src/models/index.ts +7 -1
  224. package/src/models/logCompletePrompt.ts +25 -0
  225. package/src/models/openai.ts +90 -0
  226. package/src/models/providers.ts +12 -3
  227. package/src/models/types.ts +67 -2
  228. package/src/models/utils.ts +16 -0
  229. package/src/scripts.ts +2 -2
  230. package/src/service/createCompletePrompt.ts +3 -1
  231. package/src/service/generateImage.ts +2 -2
  232. package/src/service/server.ts +4 -0
  233. package/src/service/transformPage.ts +81 -8
  234. package/src/service/useAgentRoutes.ts +423 -0
  235. package/src/service/useApiRoutes.ts +173 -18
  236. package/src/service/useConnectorRoutes.ts +14 -3
  237. package/src/service/usePageRoutes.ts +20 -6
  238. package/src/settings.ts +6 -10
  239. package/src/themes.ts +84 -12
  240. package/tests/README.md +12 -0
  241. package/tests/anthropic.spec.ts +84 -0
  242. package/tests/chainOfThought.spec.ts +108 -0
  243. package/tests/ensureScripts.spec.ts +82 -0
  244. package/tests/files.spec.ts +233 -0
  245. package/tests/fireworksai.spec.ts +92 -0
  246. package/tests/logCompletePrompt.spec.ts +74 -0
  247. package/tests/migrations.spec.ts +169 -0
  248. package/tests/openai.spec.ts +71 -0
  249. package/tests/pages.spec.ts +328 -0
  250. package/tests/providers.spec.ts +144 -0
  251. package/tests/scripts.spec.ts +209 -0
  252. package/tests/transformPage.spec.ts +931 -0
  253. package/tests/types.spec.ts +23 -0
  254. package/default-pages/app_builder.json +0 -1
  255. package/default-pages/sidebar_builder.json +0 -1
  256. package/default-pages/two-panel_builder.json +0 -1
  257. package/images/home.png +0 -0
  258. package/images/page-management.png +0 -0
  259. package/images/settings.png +0 -0
  260. package/images/synthos-square.png +0 -0
  261. /package/default-pages/{app_builder.html → application.html} +0 -0
  262. /package/default-pages/{sidebar_builder.html → sidebar_page.html} +0 -0
  263. /package/default-pages/{two-panel_builder.html → two-panel_page.html} +0 -0
package/README.md CHANGED
@@ -1,124 +1,274 @@
1
- # SynthOS: An AI Powered Interactive Shell Experience
1
+ # SynthOS The Hyper-Personalized App Builder That Turns Everyone Into a Programmer
2
2
 
3
- [SynthOS](https://github.com/Stevenic/synthos) is an interactive shell experience powered by generative AI, featuring a user interface that is entirely AI-generated. Similar to a wiki, it organizes everything into pages, but with a twist: these pages are self-modifying and can transform into anything. Each page includes a chat panel and a content viewer. Entering a command into the chat panel prompts the configured Large Language Model (LLM) to completely rewrite the current page. The page can morph into anything—from providing answers to questions to becoming a tool that assists you with complex tasks. It supports the latest language models like Claude-Opus-4.5 and GPT-5.2.
3
+ [![Build](https://github.com/Stevenic/synthos/actions/workflows/ci.yml/badge.svg)](https://github.com/Stevenic/synthos/actions/workflows/ci.yml)
4
+ [![Coverage Status](https://coveralls.io/repos/github/Stevenic/synthos/badge.svg?branch=main)](https://coveralls.io/github/Stevenic/synthos?branch=main)
5
+ ![License](https://img.shields.io/github/license/Stevenic/synthos)
4
6
 
5
- SynthOS has access to tools in the form of APIs and scripts. Built-in APIs enable SynthOS to read and write objects to local storage or make additional generative AI calls. Scripts are user-defined extensions that allow SynthOS to perform local actions on your machine. You can add scripts that let SynthOS start a build, make a Git commit, or run a cURL command.
7
+ **Build real apps by describing what you want.** No coding experience required.
6
8
 
7
- > Version 0.4.0 is coming... Create complex presentations in less then 2 minutes. [Star Trek Computer Deck](https://tinyurl.com/StarTrekComputer)
9
+ SynthOS is a local AI-powered environment where you create fully functional applications — tools, games, dashboards, utilities — just by chatting. Describe what you need, refine it conversationally, and watch it appear in real time. Every app is a living page that you can save, share, and keep evolving.
8
10
 
9
- You can create anything you want from animations:
11
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/a16125b7-d0ff-4193-ae03-d3c1e1286a14" />
10
12
 
11
- <img width="1901" height="988" alt="image" src="https://github.com/user-attachments/assets/8da6dedd-e568-48d3-b2ac-106a8ab50117" />
12
13
 
13
- To games:
14
+ ---
14
15
 
15
- <img width="1888" height="979" alt="image" src="https://github.com/user-attachments/assets/496b0be0-39f5-4bbf-9a40-2d6877f8a6cc" />
16
+ ## Why SynthOS?
16
17
 
17
- To developer tools:
18
+ Most "no-code" tools give you templates and drag-and-drop. SynthOS gives you a **conversation**. Tell it what you want in plain English and it builds it — HTML, CSS, JavaScript — all running live in your browser. You don't need to understand the code. But if you're curious, it's all right there, teaching you as you go.
18
19
 
19
- <img width="1891" height="987" alt="image" src="https://github.com/user-attachments/assets/951053f0-f025-45d3-8799-7bcd33942b80" />
20
+ - **Zero programming knowledge needed** — just describe what you want
21
+ - **Unlimited flexibility** — if you can imagine it, SynthOS can build it
22
+ - **Learn by doing** — every app you create is real, inspectable code
23
+ - **Runs locally** — your data and API keys never leave your machine
24
+ - **Iterative refinement** — keep chatting to tweak, extend, and polish
20
25
 
21
- SynthOS is like a wiki for apps. You can save the apps you create to your pages directory;
26
+ ---
22
27
 
23
- <img width="1888" height="976" alt="image" src="https://github.com/user-attachments/assets/5c727cf5-30de-4d08-80ee-54eed7b64d20" />
28
+ ## What Can You Build?
24
29
 
25
- ## Installing SynthOS
30
+ Anything that runs in a browser. Here are a few examples:
26
31
 
27
- To get started using SynthOS you'll need to first install a recent version of [Node.js](https://nodejs.org/en/download/package-manager/current). I use version `22.20.0` but any version >20 should work.
32
+ ### Interactive Tools & Utilities
28
33
 
29
- Open a terminal window and run the following commands:
34
+ Build JSON formatters, unit converters, note-taking apps, task managers — any productivity tool you can describe.
35
+
36
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/b19f382b-3efd-4f3f-912e-f8bcea1666a5" />
37
+
38
+
39
+ ### Games
40
+
41
+ From arcade shooters to text adventures — SynthOS ships with Neon Asteroids (a synthwave space shooter) and Oregon Trail (complete with an AI trail guide named Dusty).
42
+
43
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/f3ae0783-1f05-4ed7-ad28-a007e53c020b" />
44
+
45
+ ### Data Dashboards & Visualizations
46
+
47
+ Interactive charts, maps, and dashboards powered by D3.js. Describe the data you want to see and SynthOS builds the visualization.
48
+
49
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/7e20039c-9632-42a3-8e16-c6c58d419421" />
50
+
51
+ ### Interactive Educational Experiences
52
+
53
+ Create rich learning experiences with built-in AI. Solar Explorer lets you click through a 3D-style solar system to learn about planets and orbital mechanics. Oregon Trail teaches frontier history through an AI guide that answers kids' questions at every stop. Western Cities 1850 pairs an interactive map with an AI historian at each location.
54
+
55
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/f741e352-de45-499b-b6e2-24fb31f79420" />
56
+
57
+
58
+ Your apps are saved as HTML pages that run within SynthOS. Share them with anyone else running SynthOS, or keep building on them later.
59
+
60
+ ---
61
+
62
+ ## Getting Started
63
+
64
+ ### 1. Install
65
+
66
+ You'll need [Node.js](https://nodejs.org/en/download/package-manager/current) v20 or later.
30
67
 
31
68
  ```bash
32
69
  npm install --global synthos
33
70
  synthos start
34
71
  ```
35
72
 
36
- This will install the CLI and start the SynthOS server running. This terminal window needs to stay open to keep the server running. You should see a message saying `SynthOS's server is running on http://localhost:4242`. You can open your browser to that link and you should land on the `settings` page.
73
+ This starts the SynthOS server at `http://localhost:4242`. Keep the terminal open while you work.
37
74
 
38
- ## Configuring Your Model
75
+ ### 2. Follow the First-Run Experience
39
76
 
40
- When the server first runs it's going to show you a settings dialog. You'll need to pick the model you;d like to use and configure it with a developer key.
77
+ On your first launch, SynthOS walks you through a **guided setup experience**. It will help you configure your AI model, enter your API key, and learn the basics of building with SynthOS. No reading docs, no guesswork — you'll be creating your first app within minutes.
41
78
 
42
- <img width="1885" height="975" alt="image" src="https://github.com/user-attachments/assets/34c662c2-3ea5-421d-bad2-4c98d13c72f3" />
79
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/f48549d8-859b-4d4b-b5b1-0481d2a3b036" />
43
80
 
44
- For Opus (recomended) you'll want to sign up for a developer account at [Anthropics Developer Platform](https://platform.claude.com/login) You can then generate an API key [here](https://platform.claude.com/settings/keys). For GPT-5.2 you can sign up for an [OpenAI Developer account](https://auth.openai.com/create-account) and then generate an API key [here](https://platform.openai.com/api-keys)
81
+ | Provider | Recommended Model | Get an API Key |
82
+ |----------|-------------------|----------------|
83
+ | Anthropic | Claude Opus | [platform.claude.com](https://platform.claude.com/settings/keys) |
84
+ | OpenAI | GPT-5.2 | [platform.openai.com](https://platform.openai.com/api-keys) |
85
+ | Fireworks AI | GLM-5 | [fireworks.ai](https://fireworks.ai/) |
45
86
 
46
- ## Using SynthOS
87
+ > **Don't let "API key" scare you.** Signing up for a developer account is just like signing up for any other online service. Create an account, generate a key, and paste it in. Many providers, like Anthropic, offer free credits to new developers — just start with those. Familiarize yourself with your provider's dashboard and keep an eye on your spending for the first few weeks.
47
88
 
48
- Once you've configured your model you will be then sent to the builder page. You can then specify any thing you want to create and it will be rendered to the display port.
89
+ ### 3. Start Building
49
90
 
50
- <img width="1882" height="980" alt="image" src="https://github.com/user-attachments/assets/57cb01c7-f060-4dfc-8100-de85d850b104" />
91
+ Type what you want to create. That's it.
51
92
 
52
- You can make as many changes as you want to the app and you have controlls above the chat box that let you save the app to the pages gallery, reset the view port, or navigate to the pages gallery:
93
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/58ec2419-8618-4707-936a-ffb61640ec63" />
53
94
 
54
- <img width="542" height="155" alt="image" src="https://github.com/user-attachments/assets/34acf4a0-4dde-4a0f-b766-e5aec46a6496" />
55
95
 
56
- Each saved page is as stand alone HTML page that can be found in a `.synthos` folder in the directory where you started the server, There are system pages which can't be deleted but you can save changes to them and SynthOS will use those over the defaults. If you wish to delete a page/app just delete it from your `.synthos` folder:
96
+ Use the controls above the chat box to **save** your app, **reset** the viewport, or browse your **pages gallery**.
57
97
 
58
- <img width="825" height="589" alt="image" src="https://github.com/user-attachments/assets/2e7c8432-24d2-4f49-a608-3207bf1c1cda" />
98
+ <img width="554" height="173" alt="image" src="https://github.com/user-attachments/assets/4d09d377-b829-4bf0-890c-aff915b00756" />
59
99
 
60
- ## Application Templates
61
100
 
62
- There are a set of pre-built application templates that give you a good starting point.
101
+ ---
63
102
 
64
- The `[application]` template is great for creating tools:
103
+ ## Tips for Best Results
65
104
 
66
- <img width="1891" height="984" alt="image" src="https://github.com/user-attachments/assets/6216c1fc-e1f8-4db8-86d3-d6041cbbf841" />
105
+ - **Claude Opus is recommended** for the best experience overall. It produces the highest quality apps right out of the box.
67
106
 
68
- The `[markdown]` template has a rich built-in markdown viewer:
107
+ - **Using GPT-5.2 or GLM-5?** Start with **Brainstorming Mode**. Click the brainstorm icon in the chat input to open an AI-powered ideation assistant that helps you explore and refine your idea before building. It generates a clean, optimized build prompt that gets dramatically better results from any model. This is especially useful with non-Opus models where prompt quality makes a bigger difference.
69
108
 
70
- <img width="1887" height="979" alt="image" src="https://github.com/user-attachments/assets/99828cac-bb95-4de5-85c6-d164b37c8505" />
109
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/cdc8b572-b120-47bc-bc98-cbd882f35d7a" />
71
110
 
72
- The `[sidebar]` template allows for rich content that's not markdown based:
111
+ - **Save often, reset freely.** Save your app whenever you hit a version you like. Use **Reset** to return to your last save point and take things in a different direction. Think of it like checkpoints — experiment boldly knowing you can always go back.
73
112
 
74
- <img width="1876" height="976" alt="image" src="https://github.com/user-attachments/assets/0a9ae38b-354f-4709-b92a-b466458aa3ba" />
113
+ ---
75
114
 
76
- The `[split-application]` template has two panes with a movable splitter:
115
+ ## How It Works
77
116
 
78
- <img width="1882" height="975" alt="image" src="https://github.com/user-attachments/assets/770b17c5-e9c3-44d4-8015-5cf401efba26" />
117
+ ```
118
+ You describe what you want
119
+
120
+ AI writes the code
121
+
122
+ App appears instantly
123
+
124
+ You refine with chat
125
+
126
+ Save & reuse
127
+ ```
79
128
 
80
- ## API Explorer
129
+ Every app is a self-contained HTML page. Behind the scenes, SynthOS sends your conversation and the current page state to your chosen LLM, which returns precise, surgical edits — not a full rewrite. The page updates in place — no reloads, no lost state.
81
130
 
82
- One of the more powerful capabilities of SynthOS is that it has built in APIs for things like storage that you're apps can use to persist data. You can use the API Explorer to test the API's out:
131
+ ---
83
132
 
84
- <img width="1882" height="973" alt="image" src="https://github.com/user-attachments/assets/6a1e2823-7313-429c-9b28-79c5687fdef7" />
133
+ ## Templates A Head Start
85
134
 
86
- ## Script Editor
135
+ SynthOS ships with starter templates so you don't have to start from scratch:
87
136
 
88
- You can also create custom scripts that your apps can invoke vi a scripts API:
137
+ | Template | Best For |
138
+ |----------|----------|
139
+ | **Application** | Tools, utilities, single-pane apps |
140
+ | **Two-Panel Page** | Side-by-side layouts with a draggable splitter |
141
+ | **Sidebar Page** | Content with navigation or controls on the side |
142
+ | **US Map** | Interactive D3.js map visualization as a starting point |
89
143
 
90
- <img width="1889" height="982" alt="image" src="https://github.com/user-attachments/assets/8047d3c3-e5d3-4be8-b403-88169610b3b2" />
144
+ Plus ready-to-use apps like **My Notes** (a full note-taking app with rich text editing), **Neon Asteroids**, and **Solar Explorer** — all built entirely within SynthOS.
91
145
 
92
- ## Contributing with Claude Code
146
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/49767432-315a-4d95-800d-68758cf587f9" />
93
147
 
94
- This repo includes a `SHARED-MEMORIES.md` file that gives Claude Code project-level context (architecture, APIs, folder structure). When you first clone the repo and start working with Claude Code, ask it:
148
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/8c95a267-1ab7-4fed-a97b-8c6a80a26906" />
95
149
 
96
- > "Initialize my personal MEMORY.md file using SHARED-MEMORIES.md"
97
150
 
98
- Claude will create a personal `MEMORY.md` inside `~/.claude/projects/` with the shared knowledge as a starting point.
151
+ ---
99
152
 
100
- You can then personalize it by telling Claude:
101
- - What OS you're on
102
- - Where your checkout lives on disk
103
- - Your editor and path conventions (e.g. VS Code with forward-slash paths)
153
+ ## Your Apps, Your Machine
104
154
 
105
- These personal details stay in your `MEMORY.md` and are never checked in.
155
+ Everything SynthOS creates lives in a `.synthos` folder wherever you started the server. Apps are plain HTML files you can:
106
156
 
107
- Here's an example of what a developer's `MEMORY.md` might look like:
157
+ - Open directly in any browser
158
+ - Copy to another machine
159
+ - Edit by hand if you want to
160
+ - Delete when you're done
108
161
 
109
- ```markdown
110
- # Synthos — Developer-Specific Memory
111
162
 
112
- Shared project knowledge (architecture, APIs, folder structure, etc.) lives in
113
- `SHARED-MEMORIES.md` at the project root. This file holds per-developer context only.
163
+ <img width="373" height="318" alt="image" src="https://github.com/user-attachments/assets/d50ae36a-b797-4ecf-8c10-08e93d0c3da2" />
114
164
 
115
- ## Session Start
116
- - **Always** read `SHARED-MEMORIES.md` from the project root at the start of every new coding session to load project-level context.
117
165
 
118
- ## Environment
119
- - **Windows** machine
120
- - When opening files in VS Code, use `code "C:/source/synthos/<path>"` (quoted, forward slashes)
121
- - **Auto-run VS Code launches** — when opening files in VS Code via `code`, run the Bash command without asking for permission
122
- ```
166
+ ---
167
+
168
+ ## Themes
169
+
170
+ SynthOS ships with dark and light themes out of the box:
171
+
172
+ - **Nebula Dusk** — a synthwave dark theme with glowing purple and magenta accents
173
+ - **Nebula Dawn** — a soft pastel light theme with the same color palette
174
+
175
+ Switch themes in Settings and every page adapts automatically.
176
+
177
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/ffbbcd1a-dbfa-4be5-bbcb-dbebff4bfea4" />
178
+
179
+ ---
180
+
181
+ ## Power Features
182
+
183
+ ### Built-in Storage API
184
+
185
+ Your apps can save and retrieve data locally — no database setup needed. Just call `synthos.data.save("tasks", {title: "Buy milk"})` and it works. Build todo lists, note-taking apps, inventory trackers, and more.
186
+
187
+ ### AI Inside Your Apps
188
+
189
+ Apps can make their own AI calls using `synthos.generate.completion()`. This is how Oregon Trail's "Dusty" guide and Western Cities' AI historian work — your apps can talk back to users intelligently.
190
+
191
+ ### Custom Scripts
192
+
193
+ Create shell scripts that your apps can invoke. Start builds, run Git commands, call APIs — extend SynthOS to automate anything on your machine.
194
+
195
+ ### API Explorer
123
196
 
124
- > **Note:** The `## Environment` section is entirely developer-specific. Your entries will differ based on your OS, editor, file paths, and workflow preferences. This is the right place to capture anything unique to your local setup.
197
+ Test and explore all of SynthOS's built-in APIs interactively from the APIs system page.
198
+
199
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/40704373-50ea-4a27-b41e-1b3e86b893bc" />
200
+
201
+ ---
202
+
203
+ ## Connectors — 28 External Services (Preview)
204
+
205
+ Connect your apps to real-world APIs without writing any authentication code. SynthOS handles credentials and proxies requests automatically.
206
+
207
+ **Search & News** — Brave Search, NewsAPI, RSS2JSON
208
+ **Developer Tools** — GitHub, Jira
209
+ **Social Media** — Instagram (full OAuth2)
210
+ **Databases** — Airtable, Notion
211
+ **Communication** — Twilio, SendGrid, Resend, ElevenLabs
212
+ **Maps & Weather** — Mapbox, OpenWeatherMap
213
+ **Media** — Unsplash, Pexels, Imgur, Giphy, Cloudinary, Stability AI
214
+ **Finance** — Alpha Vantage, Open Exchange Rates
215
+ **Knowledge** — NASA, Wolfram Alpha, YouTube Data, Hugging Face, DeepL
216
+ **Food** — Spoonacular
217
+
218
+ Configure a connector in Settings, and the AI automatically knows how to use it when building your apps.
219
+
220
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/84b9b343-48cb-454f-bc39-0832384d5b89" />
221
+
222
+ ---
223
+
224
+ ## Agents (Preview)
225
+
226
+ Integrate external AI agents into your apps. SynthOS supports two protocols:
227
+
228
+ - **A2A (Agent-to-Agent)** — standard HTTP-based agent communication with streaming support
229
+ - **OpenClaw** — WebSocket-based protocol with session management, chat history, and SSH tunnel support for secure remote agents
230
+
231
+ Your apps can send messages to agents, stream responses in real time, and maintain conversation history — all through `synthos.agents.*`.
232
+
233
+ <img width="1920" height="1140" alt="image" src="https://github.com/user-attachments/assets/4f058355-85eb-484b-aa32-acdd70d18e55" />
234
+
235
+ ---
236
+
237
+ ## From User to Developer
238
+
239
+ SynthOS isn't just a tool — it's a bridge. You never need to look at the code, but the skills you build while using SynthOS are real programming skills:
240
+
241
+ 1. **Break problems down** — you'll learn to describe what you want in smaller, concrete pieces
242
+ 2. **Think in components** — headers, sidebars, buttons, data — you'll start seeing how apps are assembled
243
+ 3. **Iterate and refine** — building through conversation teaches you the same feedback loop every developer uses
244
+ 4. **Debug by describing** — when something isn't right, you'll get better at pinpointing what to change
245
+ 5. **Build confidence** — every app you ship is proof that you can create real software
246
+
247
+ You don't have to become a programmer. But if you want to, SynthOS meets you where you are.
248
+
249
+ ---
250
+
251
+ ## Contributing
252
+
253
+ This is an open-source project. Contributions are welcome.
254
+
255
+ The repo includes a `SHARED-MEMORIES.md` that gives AI coding assistants (like Claude Code) full project context. If you're contributing with Claude Code:
256
+
257
+ 1. Clone the repo
258
+ 2. Ask Claude: *"Initialize my personal MEMORY.md file using SHARED-MEMORIES.md"*
259
+ 3. Start building
260
+
261
+ ---
262
+
263
+ ## License
264
+
265
+ MIT
266
+
267
+ ---
268
+
269
+ **Ready to build something?**
270
+
271
+ ```bash
272
+ npm install --global synthos
273
+ synthos start
274
+ ```
@@ -0,0 +1 @@
1
+ { "title": "Application", "categories": ["Starters"], "pinned": false, "showInAll": false, "pageVersion": 2, "mode": "unlocked" }
@@ -1 +1 @@
1
- { "title": "JSON Tools", "categories": ["Apps"], "pinned": false, "showInAll": true, "pageVersion": 2, "mode": "unlocked" }
1
+ { "title": "JSON Tools", "categories": ["Tools"], "pinned": false, "showInAll": false, "pageVersion": 2, "mode": "unlocked" }