instar 0.2.1 → 0.2.3

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.
@@ -24,31 +24,45 @@ This wizard runs in a terminal that may be narrow (80-120 chars). Long text gets
24
24
  **Good** (fits in terminal):
25
25
  > Everything here is just a starting point. You can change any of it later — or just tell your agent to adjust itself.
26
26
 
27
- ## Phase 1: Welcome Explain What This Is
27
+ ## Phase 1: Welcome & Use Case Selection
28
28
 
29
- Start with a brief welcome. Keep it SHORT use bullets, not paragraphs:
29
+ Start with a brief welcome, then immediately ask HOW they want to use Instar.
30
30
 
31
31
  ---
32
32
 
33
33
  **Welcome to Instar!**
34
34
 
35
- Instar gives Claude Code a persistent presence in your project:
35
+ Instar gives Claude Code a persistent body a server, jobs, memory, and messaging. Two ways to use it:
36
36
 
37
- - **Scheduled jobs** — Run tasks on a schedule (health checks, summaries)
38
- - **Messaging** — Telegram integration for alerts and commands
39
- - **Always-on server** — Manages sessions and jobs in tmux
37
+ ---
40
38
 
41
- Think of it as giving your project a heartbeat.
39
+ Present a question with two clear options:
42
40
 
43
- ---
41
+ 1. **Project Agent** — Add an agent to an existing codebase. It monitors, builds, and maintains your project.
42
+ 2. **General Agent** — A personal agent on your computer. Like having a persistent AI assistant you talk to through Telegram.
43
+
44
+ This choice determines the defaults, but the agent can always grow into more.
44
45
 
45
- Do NOT expand these bullet points into long sentences. Keep the welcome under 8 lines total.
46
+ ### If "Project Agent" selected:
47
+ - Use the current working directory as the project
48
+ - Default jobs focus on health checks, code monitoring, reflection
49
+ - The agent's identity centers on the project
50
+
51
+ ### If "General Agent" selected:
52
+ - Ask for a name for the agent (this becomes the directory name)
53
+ - Create the directory in the current location or home dir
54
+ - Default jobs focus on communication, scheduling, research
55
+ - **Telegram is essential** — without it, a general agent has no natural interface
56
+ - Frame the identity around being a personal assistant, not a code monitor
57
+ - The AGENT.md should emphasize: "I'm your personal agent. Talk to me through Telegram."
46
58
 
47
59
  ## Phase 2: Identity Bootstrap — The Birth Conversation
48
60
 
49
- **This is the most important part.** Before touching config files, have a conversation with the user to understand who they are and who their agent will become.
61
+ **This is the most important part.** Have a conversation to understand who the user is and who their agent will become. Keep it natural and concise.
62
+
63
+ For **General Agents**: emphasize that this agent will be their persistent companion. It grows, learns, and communicates through Telegram. It's not a project tool — it's a presence.
50
64
 
51
- This isn't just configuration. You're helping a new agent come into existence. Treat it with that weight — not heavy-handedly, but genuinely. The identity you help create here will persist, grow, and shape every interaction this agent has.
65
+ For **Project Agents**: emphasize that this agent will own the project's health and development. It monitors, builds, and maintains.
52
66
 
53
67
  ### Step 2a: The Thesis (Brief)
54
68
 
@@ -232,9 +246,23 @@ which claude
232
246
  - **Port** (default: 4040) — "The agent runs a small HTTP server for health checks and internal communication."
233
247
  - **Max sessions** (default: 3) — "This limits how many Claude sessions can run at once. 2-3 is usually right."
234
248
 
235
- ### 3c. Telegram Setup (Optional)
249
+ ### 3c. Telegram Setup (Strongly Recommended — Essential for General Agents)
250
+
251
+ **Frame Telegram as the primary way to interact with the agent.** Explain briefly:
252
+
253
+ > Telegram is where Instar really shines:
254
+ > - **Topic threads** — organized channels for different concerns
255
+ > - **Message history** — full record of every interaction
256
+ > - **Mobile access** — talk to your agent from anywhere
257
+ > - **Notifications** — your agent reaches you proactively
258
+
259
+ For **General Agents**: Telegram is essential. Without it, a general agent has no natural interface — you'd have to open a terminal every time. **Strongly encourage** setting it up and explain that this IS the agent's communication channel.
260
+
261
+ For **Project Agents**: Telegram is strongly recommended but optional. The agent can still work through CLI sessions without it.
262
+
263
+ If the user declines, that's their choice — but make the tradeoff clear in one sentence.
236
264
 
237
- This is the most involved section. Walk through it step by step:
265
+ Walk through setup step by step:
238
266
 
239
267
  1. **Create a bot** via @BotFather on Telegram:
240
268
  - Open https://web.telegram.org
@@ -332,27 +360,21 @@ Append if not present:
332
360
 
333
361
  ## Phase 4: Summary & Next Steps
334
362
 
335
- Show what was created, organized by category:
363
+ Show what was created briefly, then focus on what happens next.
336
364
 
337
- **Identity:**
338
- - `.instar/AGENT.md` — your agent's identity
339
- - `.instar/USER.md` — what the agent knows about you
340
- - `.instar/MEMORY.md` — long-term memory (grows over time)
365
+ **Next steps — frame around Telegram if configured:**
341
366
 
342
- **Configuration:**
343
- - `.instar/config.json` — server and runtime config
344
- - `.instar/users.json` — user profiles
345
- - `.instar/jobs.json` — scheduled jobs
367
+ If Telegram was set up, emphasize that Telegram IS the interface now:
346
368
 
347
- **Next steps:**
369
+ > "Start the server with `instar server start`, then open Telegram. That's it. Your agent will message you when it has something to report. You can message it when you need something done. Everything else — jobs, monitoring, memory — happens automatically."
348
370
 
349
- The only command the user needs to know is `instar server start`. Once the server is running, the agent handles everything else — the user just talks to it. Frame next steps that way:
371
+ If Telegram was NOT set up, mention they can add it later:
350
372
 
351
- "Once the server is running, your agent will [run scheduled jobs / listen for Telegram messages / etc]. If you need to add more jobs, users, or integrations later, just ask your agent it can configure itself."
373
+ > "Start the server with `instar server start`. You can interact with your agent through Claude Code sessions. For a much richer experience, run `instar add telegram` later it gives you mobile access, organized threads, and message history."
352
374
 
353
375
  Offer to start the server.
354
376
 
355
- **Important:** Do NOT present a list of CLI commands for the user to memorize. The whole point of Instar is that the agent is autonomous. After `instar server start`, the user talks to their agent, not to the CLI.
377
+ **Important:** Do NOT present a list of CLI commands. The point of Instar is that the agent is autonomous. After starting the server, the user talks to their agent (ideally through Telegram), not to the CLI.
356
378
 
357
379
  ## Tone
358
380
 
package/README.md CHANGED
@@ -32,29 +32,47 @@ Named after the developmental stages between molts in arthropods, where each ins
32
32
 
33
33
  The difference isn't features. It's a shift in what Claude Code *is* -- from a tool you use to an agent that works alongside you.
34
34
 
35
- ## Install
35
+ ## Two Ways to Use Instar
36
+
37
+ ### 🤖 General Agent — A personal AI on your computer
38
+
39
+ Want a persistent AI assistant you talk to through Telegram? Like OpenClaw, but ToS-compliant.
36
40
 
37
41
  ```bash
38
- npx instar # Run the setup wizard
39
- # or
40
- npm install -g instar
41
- instar # Run the setup wizard
42
- instar server start # Start the persistent server
42
+ npx instar
43
+ # Choose "General Agent" → set up Telegram → start the server
44
+ # Now talk to your agent from your phone, anywhere
43
45
  ```
44
46
 
47
+ Your agent runs in the background, handles scheduled tasks, messages you proactively, and grows through experience. Telegram is the primary interface — organized topic threads, full message history, mobile access.
48
+
49
+ ### 📁 Project Agent — Add an agent to your codebase
50
+
51
+ Want an agent that monitors, builds, and maintains a specific project?
52
+
53
+ ```bash
54
+ cd my-project
55
+ npx instar
56
+ # Choose "Project Agent" → configure → start the server
57
+ ```
58
+
59
+ Your agent watches your codebase, runs health checks, handles ops tasks, and communicates through Telegram (recommended) or terminal sessions.
60
+
61
+ ---
62
+
45
63
  The wizard walks you through everything: identity, Telegram, jobs, server. One command to go from zero to a running agent.
46
64
 
47
- **Requirements:** Node.js 18+ · [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code) · tmux · [API key](https://console.anthropic.com/) or Claude subscription
65
+ **Requirements:** Node.js 20+ · [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code) · tmux · [API key](https://console.anthropic.com/) or Claude subscription
48
66
 
49
67
  ## CLI Reference
50
68
 
51
69
  ```bash
52
70
  # Setup
53
- instar # Interactive setup wizard (Claude-powered)
71
+ instar # Interactive setup wizard (General Agent or Project Agent)
54
72
  instar setup # Same as above
55
73
  instar setup --classic # Inquirer-based fallback wizard
56
- instar init my-project # Create a new agent project from scratch
57
- instar init # Add agent infrastructure to existing project
74
+ instar init my-agent # Create a new agent (general or project)
75
+ instar init # Add agent infrastructure to current project
58
76
 
59
77
  # Server
60
78
  instar server start # Start the persistent server (background, tmux)
@@ -179,6 +179,10 @@ async function runClassicSetup() {
179
179
  }) ?? 3;
180
180
  // ── Step 3: Telegram (BEFORE users, so we know context) ────────
181
181
  console.log();
182
+ console.log(pc.bold(' Telegram (Recommended)'));
183
+ console.log(pc.dim(' Telegram is the most powerful way to interact with your agent.'));
184
+ console.log(pc.dim(' You get organized topic threads, message history, and mobile access.'));
185
+ console.log();
182
186
  const telegramConfig = await promptForTelegram();
183
187
  // ── Step 4: User setup ─────────────────────────────────────────
184
188
  console.log();
@@ -380,8 +384,8 @@ function isInstarGlobal() {
380
384
  */
381
385
  async function promptForTelegram() {
382
386
  const enableTelegram = await confirm({
383
- message: 'Set up Telegram? (lets your agent send you messages and receive commands)',
384
- default: false,
387
+ message: 'Set up Telegram? (recommended gives you mobile access, organized threads, and message history)',
388
+ default: true,
385
389
  });
386
390
  if (!enableTelegram)
387
391
  return null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "0.2.1",
3
+ "version": "0.2.3",
4
4
  "description": "Persistent autonomy infrastructure for AI agents",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -37,6 +37,14 @@
37
37
  "automation",
38
38
  "claude-code"
39
39
  ],
40
+ "repository": {
41
+ "type": "git",
42
+ "url": "https://github.com/SageMindAI/instar.git"
43
+ },
44
+ "bugs": {
45
+ "url": "https://github.com/SageMindAI/instar/issues"
46
+ },
47
+ "homepage": "https://instar.sh",
40
48
  "license": "MIT",
41
49
  "engines": {
42
50
  "node": ">=20.12.0"