freeturtle 0.1.16 → 0.1.18

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.
@@ -15,14 +15,14 @@ const program = new Command();
15
15
  program
16
16
  .name("freeturtle")
17
17
  .description("An open-source framework for deploying autonomous AI CEOs that run onchain businesses.")
18
- .version("0.1.15");
18
+ .version("0.1.18");
19
19
  program
20
20
  .command("hello")
21
21
  .description("Verify the CLI is working")
22
22
  .action(() => {
23
23
  console.log(" \x1b[38;2;94;255;164m _____ ____\x1b[0m");
24
24
  console.log(" \x1b[38;2;94;255;164m/ \\ | o |\x1b[0m");
25
- console.log(" \x1b[38;2;94;255;164m| |/ ___\\|\x1b[0m FreeTurtle v0.1.15");
25
+ console.log(" \x1b[38;2;94;255;164m| |/ ___\\|\x1b[0m FreeTurtle v0.1.18");
26
26
  console.log(" \x1b[38;2;94;255;164m|_________/\x1b[0m");
27
27
  console.log(" \x1b[38;2;94;255;164m|_|_| |_|_|\x1b[0m");
28
28
  });
@@ -83,7 +83,7 @@ program
83
83
  });
84
84
  program
85
85
  .command("install-service")
86
- .description("Install FreeTurtle as a systemd user service (Linux)")
86
+ .description("Install FreeTurtle as a system service (launchd on macOS, systemd on Linux)")
87
87
  .option("--dir <path>", "Workspace directory", DEFAULT_DIR)
88
88
  .action(async (opts) => {
89
89
  const { runInstallService } = await import("../src/cli/install-service.js");
@@ -116,7 +116,31 @@ program
116
116
  });
117
117
  const connect = program
118
118
  .command("connect")
119
- .description("Connect external services");
119
+ .description("Connect external services (gmail, telegram, github, farcaster, database, onchain)");
120
+ connect
121
+ .command("gmail")
122
+ .description("Connect Gmail for reading and sending emails")
123
+ .option("--dir <path>", "Workspace directory", DEFAULT_DIR)
124
+ .action(async (opts) => {
125
+ const { connectGmail } = await import("../src/cli/connect-gmail.js");
126
+ await connectGmail(opts.dir);
127
+ });
128
+ connect
129
+ .command("telegram")
130
+ .description("Connect Telegram bot for messaging")
131
+ .option("--dir <path>", "Workspace directory", DEFAULT_DIR)
132
+ .action(async (opts) => {
133
+ const { connectTelegram } = await import("../src/cli/connect-telegram.js");
134
+ await connectTelegram(opts.dir);
135
+ });
136
+ connect
137
+ .command("github")
138
+ .description("Connect GitHub for repository access")
139
+ .option("--dir <path>", "Workspace directory", DEFAULT_DIR)
140
+ .action(async (opts) => {
141
+ const { connectGitHub } = await import("../src/cli/connect-github.js");
142
+ await connectGitHub(opts.dir);
143
+ });
120
144
  connect
121
145
  .command("farcaster")
122
146
  .description("Set up Farcaster signer with QR code approval")
@@ -126,12 +150,20 @@ connect
126
150
  await connectFarcaster(opts.dir);
127
151
  });
128
152
  connect
129
- .command("gmail")
130
- .description("Connect Gmail for reading and sending emails")
153
+ .command("database")
154
+ .description("Connect a Postgres database")
131
155
  .option("--dir <path>", "Workspace directory", DEFAULT_DIR)
132
156
  .action(async (opts) => {
133
- const { connectGmail } = await import("../src/cli/connect-gmail.js");
134
- await connectGmail(opts.dir);
157
+ const { connectDatabase } = await import("../src/cli/connect-database.js");
158
+ await connectDatabase(opts.dir);
159
+ });
160
+ connect
161
+ .command("onchain")
162
+ .description("Connect an EVM RPC endpoint for onchain reads")
163
+ .option("--dir <path>", "Workspace directory", DEFAULT_DIR)
164
+ .action(async (opts) => {
165
+ const { connectOnchain } = await import("../src/cli/connect-onchain.js");
166
+ await connectOnchain(opts.dir);
135
167
  });
136
168
  program
137
169
  .command("webhooks")
@@ -1 +1 @@
1
- {"version":3,"file":"freeturtle.js","sourceRoot":"","sources":["../../bin/freeturtle.ts"],"names":[],"mappings":";AAEA,mGAAmG;AACnG,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAwB,CAAC;AACnE,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,KAAa,EAAE,GAAG,IAAe,EAAW,EAAE;IAC7D,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;QAC7F,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,QAAQ,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;AAClC,CAAC,CAAwB,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,CAAC,CAAC;AAEnD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,YAAY,CAAC;KAClB,WAAW,CACV,wFAAwF,CACzF;KACA,OAAO,CAAC,QAAQ,CAAC,CAAC;AAErB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,GAAG,EAAE;IACX,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qBAAqB,CAAC;KAClC,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACvD,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;IACrD,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,QAAQ,EAAE,gCAAgC,EAAE,KAAK,CAAC;KACzD,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACzD,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAC3D,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IAC9B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACvD,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC3D,MAAM,SAAS,EAAE,CAAC;AACpB,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,sDAAsD,CAAC;KACnE,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;IAC5E,MAAM,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,0BAA0B,CAAC;KACvC,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;IACzB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAC/D,MAAM,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;KAC/C,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;IACzB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAC9D,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,gCAAgC,CAAC;KAC7C,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACrE,MAAM,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEL,MAAM,OAAO,GAAG,OAAO;KACpB,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,2BAA2B,CAAC,CAAC;AAE5C,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,+CAA+C,CAAC;KAC5D,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,iCAAiC,CAAC,CAAC;IAC7E,MAAM,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;IACrE,MAAM,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,+CAA+C,CAAC;KAC5D,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;IACpE,MAAM,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"freeturtle.js","sourceRoot":"","sources":["../../bin/freeturtle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function connectDatabase(dir: string): Promise<null | {
2
+ url: string;
3
+ }>;
@@ -0,0 +1,31 @@
1
+ import * as p from "@clack/prompts";
2
+ import { testDatabase } from "./connection-tests.js";
3
+ import { upsertEnv } from "./env-utils.js";
4
+ export async function connectDatabase(dir) {
5
+ p.intro("Connect Database");
6
+ const url = await p.text({
7
+ message: "Postgres connection URL:",
8
+ placeholder: "postgresql://user:pass@host:5432/dbname",
9
+ validate: (v) => (v?.startsWith("postgres") ? undefined : "Must be a postgres:// or postgresql:// URL"),
10
+ });
11
+ if (p.isCancel(url)) {
12
+ p.cancel("Cancelled.");
13
+ return null;
14
+ }
15
+ const s = p.spinner();
16
+ s.start("Testing connection...");
17
+ try {
18
+ await testDatabase(url);
19
+ s.stop("Connected!");
20
+ }
21
+ catch (err) {
22
+ s.stop("Connection failed.");
23
+ p.log.error(err instanceof Error ? err.message : String(err));
24
+ return null;
25
+ }
26
+ await upsertEnv(dir, { DATABASE_URL: url });
27
+ p.log.success("Credentials saved to .env");
28
+ p.outro("Database connected!");
29
+ return { url };
30
+ }
31
+ //# sourceMappingURL=connect-database.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect-database.js","sourceRoot":"","sources":["../../../src/cli/connect-database.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW;IAC/C,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAE5B,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;QACvB,OAAO,EAAE,0BAA0B;QACnC,WAAW,EAAE,yCAAyC;QACtD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,4CAA4C,CAAC;KACxG,CAAC,CAAC;IACH,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IAE7D,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7B,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;IAE5C,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAE/B,OAAO,EAAE,GAAG,EAAE,CAAC;AACjB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function connectGitHub(dir: string): Promise<null | {
2
+ token: string;
3
+ }>;
@@ -0,0 +1,36 @@
1
+ import * as p from "@clack/prompts";
2
+ import { testGitHub } from "./connection-tests.js";
3
+ import { upsertEnv } from "./env-utils.js";
4
+ export async function connectGitHub(dir) {
5
+ p.intro("Connect GitHub");
6
+ p.note([
7
+ "Create a personal access token at:",
8
+ " github.com/settings/tokens",
9
+ "",
10
+ "Required scopes: repo, read:user",
11
+ ].join("\n"), "GitHub Setup");
12
+ const token = await p.text({
13
+ message: "GitHub personal access token:",
14
+ validate: (v) => (!v || v.length < 10 ? "Invalid token" : undefined),
15
+ });
16
+ if (p.isCancel(token)) {
17
+ p.cancel("Cancelled.");
18
+ return null;
19
+ }
20
+ const s = p.spinner();
21
+ s.start("Testing connection...");
22
+ try {
23
+ await testGitHub(token);
24
+ s.stop("Connected!");
25
+ }
26
+ catch (err) {
27
+ s.stop("Connection failed.");
28
+ p.log.error(err instanceof Error ? err.message : String(err));
29
+ return null;
30
+ }
31
+ await upsertEnv(dir, { GITHUB_TOKEN: token });
32
+ p.log.success("Credentials saved to .env");
33
+ p.outro("GitHub connected!");
34
+ return { token };
35
+ }
36
+ //# sourceMappingURL=connect-github.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect-github.js","sourceRoot":"","sources":["../../../src/cli/connect-github.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,GAAW;IAC7C,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAE1B,CAAC,CAAC,IAAI,CACJ;QACE,oCAAoC;QACpC,8BAA8B;QAC9B,EAAE;QACF,kCAAkC;KACnC,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,cAAc,CACf,CAAC;IAEF,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,+BAA+B;QACxC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;KACrE,CAAC,CAAC;IACH,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IAE/D,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7B,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IAE9C,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAE7B,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function connectOnchain(dir: string): Promise<null | {
2
+ rpcUrl: string;
3
+ }>;
@@ -0,0 +1,31 @@
1
+ import * as p from "@clack/prompts";
2
+ import { testOnchain } from "./connection-tests.js";
3
+ import { upsertEnv } from "./env-utils.js";
4
+ export async function connectOnchain(dir) {
5
+ p.intro("Connect Onchain");
6
+ const rpcUrl = await p.text({
7
+ message: "EVM RPC URL:",
8
+ placeholder: "https://mainnet.base.org",
9
+ validate: (v) => (v?.startsWith("http") ? undefined : "Must be an HTTP(S) URL"),
10
+ });
11
+ if (p.isCancel(rpcUrl)) {
12
+ p.cancel("Cancelled.");
13
+ return null;
14
+ }
15
+ const s = p.spinner();
16
+ s.start("Testing connection...");
17
+ try {
18
+ await testOnchain(rpcUrl);
19
+ s.stop("Connected!");
20
+ }
21
+ catch (err) {
22
+ s.stop("Connection failed.");
23
+ p.log.error(err instanceof Error ? err.message : String(err));
24
+ return null;
25
+ }
26
+ await upsertEnv(dir, { RPC_URL: rpcUrl });
27
+ p.log.success("Credentials saved to .env");
28
+ p.outro("Onchain connected!");
29
+ return { rpcUrl };
30
+ }
31
+ //# sourceMappingURL=connect-onchain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect-onchain.js","sourceRoot":"","sources":["../../../src/cli/connect-onchain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAW;IAC9C,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAE3B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;QAC1B,OAAO,EAAE,cAAc;QACvB,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC;KAChF,CAAC,CAAC;IACH,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IAEhE,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7B,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAE1C,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAE9B,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function connectTelegram(dir: string): Promise<null | {
2
+ token: string;
3
+ ownerId: string;
4
+ }>;
@@ -0,0 +1,41 @@
1
+ import * as p from "@clack/prompts";
2
+ import { testTelegram } from "./connection-tests.js";
3
+ import { upsertEnv } from "./env-utils.js";
4
+ export async function connectTelegram(dir) {
5
+ p.intro("Connect Telegram");
6
+ const token = await p.text({
7
+ message: "Telegram bot token (from @BotFather):",
8
+ validate: (v) => (!v || v.length < 10 ? "Invalid token" : undefined),
9
+ });
10
+ if (p.isCancel(token)) {
11
+ p.cancel("Cancelled.");
12
+ return null;
13
+ }
14
+ const s = p.spinner();
15
+ s.start("Testing connection...");
16
+ try {
17
+ await testTelegram(token);
18
+ s.stop("Connected!");
19
+ }
20
+ catch (err) {
21
+ s.stop("Connection failed.");
22
+ p.log.error(err instanceof Error ? err.message : String(err));
23
+ return null;
24
+ }
25
+ const ownerId = await p.text({
26
+ message: "Your Telegram user ID (founder only — the CEO will only respond to this ID):",
27
+ validate: (v) => (v && /^\d+$/.test(v) ? undefined : "Must be a numeric ID"),
28
+ });
29
+ if (p.isCancel(ownerId)) {
30
+ p.cancel("Cancelled.");
31
+ return null;
32
+ }
33
+ await upsertEnv(dir, {
34
+ TELEGRAM_BOT_TOKEN: token,
35
+ TELEGRAM_OWNER_ID: ownerId,
36
+ });
37
+ p.log.success("Credentials saved to .env");
38
+ p.outro("Telegram connected!");
39
+ return { token, ownerId };
40
+ }
41
+ //# sourceMappingURL=connect-telegram.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect-telegram.js","sourceRoot":"","sources":["../../../src/cli/connect-telegram.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW;IAC/C,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAE5B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,uCAAuC;QAChD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;KACrE,CAAC,CAAC;IACH,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IAE/D,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7B,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;QAC3B,OAAO,EAAE,8EAA8E;QACvF,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,CAAC;KAC7E,CAAC,CAAC;IACH,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IAEjE,MAAM,SAAS,CAAC,GAAG,EAAE;QACnB,kBAAkB,EAAE,KAAK;QACzB,iBAAiB,EAAE,OAAO;KAC3B,CAAC,CAAC;IAEH,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAE/B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC5B,CAAC"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Upsert key=value pairs into a .env file. Creates the file if missing.
3
+ */
4
+ export declare function upsertEnv(dir: string, vars: Record<string, string>): Promise<void>;
@@ -0,0 +1,28 @@
1
+ import { chmod, mkdir, readFile, writeFile } from "node:fs/promises";
2
+ import { dirname, join } from "node:path";
3
+ /**
4
+ * Upsert key=value pairs into a .env file. Creates the file if missing.
5
+ */
6
+ export async function upsertEnv(dir, vars) {
7
+ const envPath = join(dir, ".env");
8
+ let content = "";
9
+ try {
10
+ content = await readFile(envPath, "utf-8");
11
+ }
12
+ catch {
13
+ // no existing .env
14
+ }
15
+ for (const [key, value] of Object.entries(vars)) {
16
+ const regex = new RegExp(`^${key}=.*$`, "m");
17
+ if (regex.test(content)) {
18
+ content = content.replace(regex, `${key}=${value}`);
19
+ }
20
+ else {
21
+ content += `${content.endsWith("\n") || content === "" ? "" : "\n"}${key}=${value}\n`;
22
+ }
23
+ }
24
+ await mkdir(dirname(envPath), { recursive: true });
25
+ await writeFile(envPath, content, "utf-8");
26
+ await chmod(envPath, 0o600);
27
+ }
28
+ //# sourceMappingURL=env-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-utils.js","sourceRoot":"","sources":["../../../src/cli/env-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,GAAW,EACX,IAA4B;IAE5B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAElC,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,mBAAmB;IACrB,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7C,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,IAAI,KAAK,IAAI,CAAC;QACxF,CAAC;IACH,CAAC;IAED,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,MAAM,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3C,MAAM,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC"}
@@ -8,6 +8,7 @@ import { connectFarcaster } from "./connect-farcaster.js";
8
8
  import { connectGmail } from "./connect-gmail.js";
9
9
  import { scanForSecrets, redactSecrets, condenseDocs } from "./intake.js";
10
10
  import { testTelegram, testGitHub, testDatabase, testOnchain } from "./connection-tests.js";
11
+ import { runInstallService } from "./install-service.js";
11
12
  import { createWebhook, channelToUrl } from "../webhooks/neynar.js";
12
13
  const TURTLE = `
13
14
  \x1b[38;2;94;255;164m_____\x1b[0m \x1b[38;2;94;255;164m____\x1b[0m
@@ -986,15 +987,40 @@ ${state.founderName}.
986
987
  if (modules.length > 0) {
987
988
  p.log.info(`Connected: ${modules.join(", ")}`);
988
989
  }
990
+ // Install as a system service (launchd on macOS, systemd on Linux)
991
+ const installService = await p.confirm({
992
+ message: `Install ${state.ceoName} as a system service? (auto-starts on boot, restarts on crash)`,
993
+ initialValue: true,
994
+ });
995
+ if (p.isCancel(installService)) {
996
+ p.cancel("Setup cancelled.");
997
+ process.exit(0);
998
+ }
999
+ if (installService) {
1000
+ try {
1001
+ await runInstallService(dir);
1002
+ }
1003
+ catch (err) {
1004
+ const msg = err instanceof Error ? err.message : "Unknown error";
1005
+ p.log.warn(`Could not install service: ${msg}`);
1006
+ p.log.info("You can install it later with: freeturtle install-service");
1007
+ }
1008
+ }
989
1009
  p.note([
990
1010
  "Config: ~/.freeturtle/config.md",
991
1011
  "Soul: ~/.freeturtle/soul.md",
992
1012
  "",
993
- "Start: freeturtle start",
994
- "Chat: freeturtle start --chat",
1013
+ ...(installService
1014
+ ? ["Your CEO is running as a system service."]
1015
+ : [
1016
+ "Start: freeturtle start",
1017
+ "Chat: freeturtle start --chat",
1018
+ ]),
995
1019
  "Status: freeturtle status",
996
1020
  ].join("\n"), `${state.ceoName} is ready`);
997
- p.log.info("Run `freeturtle start` to bring your CEO online.");
1021
+ if (!installService) {
1022
+ p.log.info("Run `freeturtle start` to bring your CEO online.");
1023
+ }
998
1024
  p.outro(`Go get 'em, ${state.ceoName}!`);
999
1025
  }
1000
1026
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/init.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { mkdir, writeFile } from "node:fs/promises";
2
2
  import { join, resolve } from "node:path";
3
- import { homedir } from "node:os";
3
+ import { homedir, platform } from "node:os";
4
4
  import { execSync } from "node:child_process";
5
5
  const SERVICE_NAME = "freeturtle";
6
- function getServiceContent(dir) {
6
+ /* ── systemd (Linux) ────────────────────────────────────────────────── */
7
+ function getSystemdUnit(dir) {
7
8
  const nodePath = execSync("which node", { encoding: "utf-8" }).trim();
8
9
  const freeturtleBin = resolve(join(import.meta.dirname, "../../bin/freeturtle.js"));
9
10
  return `[Unit]
@@ -20,38 +21,126 @@ Environment=NODE_ENV=production
20
21
  WantedBy=default.target
21
22
  `;
22
23
  }
23
- export async function runInstallService(dir) {
24
+ async function installSystemd(dir) {
24
25
  const serviceDir = join(homedir(), ".config", "systemd", "user");
25
26
  const servicePath = join(serviceDir, `${SERVICE_NAME}.service`);
26
27
  await mkdir(serviceDir, { recursive: true });
27
- const content = getServiceContent(dir);
28
- await writeFile(servicePath, content, "utf-8");
28
+ await writeFile(servicePath, getSystemdUnit(dir), "utf-8");
29
29
  console.log(`Service file written to ${servicePath}`);
30
30
  console.log();
31
+ execSync("systemctl --user daemon-reload", { stdio: "inherit" });
32
+ execSync(`systemctl --user enable ${SERVICE_NAME}`, { stdio: "inherit" });
33
+ execSync(`systemctl --user start ${SERVICE_NAME}`, { stdio: "inherit" });
34
+ console.log();
35
+ console.log("FreeTurtle service installed and started.");
36
+ console.log();
37
+ console.log("Manage with:");
38
+ console.log(` systemctl --user status ${SERVICE_NAME}`);
39
+ console.log(` systemctl --user stop ${SERVICE_NAME}`);
40
+ console.log(` systemctl --user restart ${SERVICE_NAME}`);
41
+ console.log(` journalctl --user -u ${SERVICE_NAME} -f`);
42
+ console.log();
43
+ console.log("To ensure the service survives logouts:");
44
+ console.log(" sudo loginctl enable-linger $(whoami)");
45
+ }
46
+ /* ── launchd (macOS) ────────────────────────────────────────────────── */
47
+ function getLaunchdPlist(dir) {
48
+ const nodePath = execSync("which node", { encoding: "utf-8" }).trim();
49
+ const freeturtleBin = resolve(join(import.meta.dirname, "../../bin/freeturtle.js"));
50
+ const logDir = join(homedir(), "Library", "Logs", SERVICE_NAME);
51
+ return `<?xml version="1.0" encoding="UTF-8"?>
52
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
53
+ <plist version="1.0">
54
+ <dict>
55
+ <key>Label</key>
56
+ <string>com.freeturtle.daemon</string>
57
+
58
+ <key>ProgramArguments</key>
59
+ <array>
60
+ <string>${nodePath}</string>
61
+ <string>${freeturtleBin}</string>
62
+ <string>start</string>
63
+ <string>--dir</string>
64
+ <string>${dir}</string>
65
+ </array>
66
+
67
+ <key>RunAtLoad</key>
68
+ <true/>
69
+
70
+ <key>KeepAlive</key>
71
+ <dict>
72
+ <key>SuccessfulExit</key>
73
+ <false/>
74
+ </dict>
75
+
76
+ <key>StandardOutPath</key>
77
+ <string>${logDir}/stdout.log</string>
78
+ <key>StandardErrorPath</key>
79
+ <string>${logDir}/stderr.log</string>
80
+
81
+ <key>EnvironmentVariables</key>
82
+ <dict>
83
+ <key>NODE_ENV</key>
84
+ <string>production</string>
85
+ </dict>
86
+ </dict>
87
+ </plist>
88
+ `;
89
+ }
90
+ async function installLaunchd(dir) {
91
+ const agentDir = join(homedir(), "Library", "LaunchAgents");
92
+ const plistPath = join(agentDir, "com.freeturtle.daemon.plist");
93
+ const logDir = join(homedir(), "Library", "Logs", SERVICE_NAME);
94
+ await mkdir(agentDir, { recursive: true });
95
+ await mkdir(logDir, { recursive: true });
96
+ // Unload existing service if present (ignore errors if not loaded)
31
97
  try {
32
- execSync("systemctl --user daemon-reload", { stdio: "inherit" });
33
- execSync(`systemctl --user enable ${SERVICE_NAME}`, { stdio: "inherit" });
34
- execSync(`systemctl --user start ${SERVICE_NAME}`, { stdio: "inherit" });
35
- console.log();
36
- console.log("FreeTurtle service installed and started.");
37
- console.log();
38
- console.log("Manage with:");
39
- console.log(` systemctl --user status ${SERVICE_NAME}`);
40
- console.log(` systemctl --user stop ${SERVICE_NAME}`);
41
- console.log(` systemctl --user restart ${SERVICE_NAME}`);
42
- console.log(` journalctl --user -u ${SERVICE_NAME} -f`);
98
+ execSync(`launchctl bootout gui/$(id -u) ${plistPath} 2>/dev/null`, { stdio: "ignore" });
99
+ }
100
+ catch {
101
+ // not loaded — that's fine
102
+ }
103
+ await writeFile(plistPath, getLaunchdPlist(dir), "utf-8");
104
+ console.log(`LaunchAgent written to ${plistPath}`);
105
+ console.log();
106
+ execSync(`launchctl bootstrap gui/$(id -u) ${plistPath}`, { stdio: "inherit" });
107
+ console.log();
108
+ console.log("FreeTurtle service installed and started.");
109
+ console.log();
110
+ console.log("Manage with:");
111
+ console.log(` launchctl kickstart -k gui/$(id -u)/com.freeturtle.daemon # restart`);
112
+ console.log(` launchctl bootout gui/$(id -u)/com.freeturtle.daemon # stop`);
113
+ console.log(` tail -f ~/Library/Logs/${SERVICE_NAME}/stdout.log # logs`);
114
+ }
115
+ /* ── Public API ─────────────────────────────────────────────────────── */
116
+ export async function runInstallService(dir) {
117
+ const os = platform();
118
+ try {
119
+ if (os === "darwin") {
120
+ await installLaunchd(dir);
121
+ }
122
+ else {
123
+ await installSystemd(dir);
124
+ }
43
125
  }
44
126
  catch {
45
127
  console.log();
46
- console.log("Service file written but could not start automatically.");
47
- console.log("This is normal on macOS systemd is Linux-only.");
48
- console.log();
49
- console.log("On a Linux server, run:");
50
- console.log(` systemctl --user daemon-reload`);
51
- console.log(` systemctl --user enable --now ${SERVICE_NAME}`);
52
- console.log();
53
- console.log("To ensure the service survives logouts:");
54
- console.log(" sudo loginctl enable-linger $(whoami)");
128
+ if (os === "darwin") {
129
+ console.log("Service file written but could not start automatically.");
130
+ console.log();
131
+ console.log("Try manually:");
132
+ console.log(` launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.freeturtle.daemon.plist`);
133
+ }
134
+ else {
135
+ console.log("Service file written but could not start automatically.");
136
+ console.log();
137
+ console.log("On a Linux server, run:");
138
+ console.log(` systemctl --user daemon-reload`);
139
+ console.log(` systemctl --user enable --now ${SERVICE_NAME}`);
140
+ console.log();
141
+ console.log("To ensure the service survives logouts:");
142
+ console.log(" sudo loginctl enable-linger $(whoami)");
143
+ }
55
144
  }
56
145
  }
57
146
  //# sourceMappingURL=install-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"install-service.js","sourceRoot":"","sources":["../../../src/cli/install-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,MAAM,YAAY,GAAG,YAAY,CAAC;AAElC,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACtE,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC,CAAC;IAEpF,OAAO;;;;;YAKG,QAAQ,IAAI,aAAa,gBAAgB,GAAG;;;;;;;CAOvD,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAW;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,YAAY,UAAU,CAAC,CAAC;IAEhE,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAE/C,OAAO,CAAC,GAAG,CAAC,2BAA2B,WAAW,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,IAAI,CAAC;QACH,QAAQ,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACjE,QAAQ,CAAC,2BAA2B,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1E,QAAQ,CAAC,0BAA0B,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAEzE,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,6BAA6B,YAAY,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,8BAA8B,YAAY,EAAE,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,0BAA0B,YAAY,KAAK,CAAC,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,mCAAmC,YAAY,EAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACzD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"install-service.js","sourceRoot":"","sources":["../../../src/cli/install-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,MAAM,YAAY,GAAG,YAAY,CAAC;AAElC,2EAA2E;AAE3E,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACtE,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC,CAAC;IAEpF,OAAO;;;;;YAKG,QAAQ,IAAI,aAAa,gBAAgB,GAAG;;;;;;;CAOvD,CAAC;AACF,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,GAAW;IACvC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,YAAY,UAAU,CAAC,CAAC;IAEhE,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,MAAM,SAAS,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,2BAA2B,WAAW,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,QAAQ,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACjE,QAAQ,CAAC,2BAA2B,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC1E,QAAQ,CAAC,0BAA0B,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAEzE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,6BAA6B,YAAY,EAAE,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,8BAA8B,YAAY,EAAE,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,0BAA0B,YAAY,KAAK,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;AACzD,CAAC;AAED,2EAA2E;AAE3E,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACtE,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC,CAAC;IACpF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAEhE,OAAO;;;;;;;;;cASK,QAAQ;cACR,aAAa;;;cAGb,GAAG;;;;;;;;;;;;;YAaL,MAAM;;YAEN,MAAM;;;;;;;;;CASjB,CAAC;AACF,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,GAAW;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAEhE,MAAM,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,MAAM,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,mEAAmE;IACnE,IAAI,CAAC;QACH,QAAQ,CAAC,kCAAkC,SAAS,cAAc,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3F,CAAC;IAAC,MAAM,CAAC;QACP,2BAA2B;IAC7B,CAAC;IAED,MAAM,SAAS,CAAC,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAE1D,OAAO,CAAC,GAAG,CAAC,0BAA0B,SAAS,EAAE,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,QAAQ,CAAC,oCAAoC,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAEhF,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;IACvF,OAAO,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,4BAA4B,YAAY,8BAA8B,CAAC,CAAC;AACtF,CAAC;AAED,2EAA2E;AAE3E,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAW;IACjD,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEtB,IAAI,CAAC;QACH,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;YACpB,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;YACvE,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,uFAAuF,CAAC,CAAC;QACvG,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;YACvE,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,mCAAmC,YAAY,EAAE,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -11,12 +11,9 @@ export declare function createGoogleOAuth2Client(creds: GoogleOAuthCredentials):
11
11
  /**
12
12
  * Run the browser-based OAuth2 consent flow.
13
13
  *
14
- * Matches OpenClaw's approach:
15
- * 1. Starts a local HTTP server on 127.0.0.1
16
- * 2. Opens the consent URL in the user's browser
17
- * 3. Waits for the redirect callback with the auth code
18
- * 4. Exchanges the code for tokens
19
- * 5. Returns the refresh_token
14
+ * Works both locally and on remote servers:
15
+ * - Locally: starts a localhost HTTP server, opens browser, waits for callback
16
+ * - Remote: prints the auth URL, user approves in browser, pastes the callback URL back
20
17
  */
21
18
  export declare function runGoogleOAuthFlow(clientId: string, clientSecret: string, opts?: {
22
19
  port?: number;
@@ -1,5 +1,6 @@
1
1
  import { OAuth2Client } from "google-auth-library";
2
2
  import http from "node:http";
3
+ import { createInterface } from "node:readline";
3
4
  import { execFile } from "node:child_process";
4
5
  /**
5
6
  * Create an authenticated OAuth2Client with auto-refresh.
@@ -18,15 +19,24 @@ function openBrowser(url) {
18
19
  // If browser open fails, the URL is already printed to console
19
20
  });
20
21
  }
22
+ /**
23
+ * Prompt the user to paste a URL from their browser (for remote/headless servers).
24
+ */
25
+ function waitForPastedUrl() {
26
+ return new Promise((resolve) => {
27
+ const rl = createInterface({ input: process.stdin, output: process.stdout });
28
+ rl.question("Paste the callback URL here: ", (answer) => {
29
+ rl.close();
30
+ resolve(answer.trim());
31
+ });
32
+ });
33
+ }
21
34
  /**
22
35
  * Run the browser-based OAuth2 consent flow.
23
36
  *
24
- * Matches OpenClaw's approach:
25
- * 1. Starts a local HTTP server on 127.0.0.1
26
- * 2. Opens the consent URL in the user's browser
27
- * 3. Waits for the redirect callback with the auth code
28
- * 4. Exchanges the code for tokens
29
- * 5. Returns the refresh_token
37
+ * Works both locally and on remote servers:
38
+ * - Locally: starts a localhost HTTP server, opens browser, waits for callback
39
+ * - Remote: prints the auth URL, user approves in browser, pastes the callback URL back
30
40
  */
31
41
  export async function runGoogleOAuthFlow(clientId, clientSecret, opts) {
32
42
  const port = opts?.port ?? 0; // 0 = OS picks a free port
@@ -52,7 +62,36 @@ export async function runGoogleOAuthFlow(clientId, clientSecret, opts) {
52
62
  prompt: "consent",
53
63
  });
54
64
  console.log(`\nOpen this URL in your browser to authorize:\n\n ${authUrl}\n`);
65
+ console.log("After approving, you'll be redirected to a localhost URL.");
66
+ console.log("If the redirect works automatically, great! Otherwise,");
67
+ console.log("copy the FULL URL from your browser's address bar and paste it below.\n");
55
68
  openBrowser(authUrl);
69
+ // Race: either the localhost server receives the callback,
70
+ // or the user pastes the URL manually (for remote servers).
71
+ let settled = false;
72
+ const handleCode = async (code) => {
73
+ if (settled)
74
+ return;
75
+ settled = true;
76
+ try {
77
+ const { tokens } = await oauth2Client.getToken(code);
78
+ if (!tokens.refresh_token) {
79
+ clearTimeout(timeout);
80
+ server.close();
81
+ reject(new Error("No refresh_token received. Revoke app access at myaccount.google.com/permissions and retry."));
82
+ return;
83
+ }
84
+ clearTimeout(timeout);
85
+ server.close();
86
+ resolve(tokens.refresh_token);
87
+ }
88
+ catch (err) {
89
+ clearTimeout(timeout);
90
+ server.close();
91
+ reject(err);
92
+ }
93
+ };
94
+ // Path 1: localhost callback server
56
95
  server.on("request", async (req, res) => {
57
96
  if (!req.url?.startsWith("/callback")) {
58
97
  res.writeHead(404);
@@ -65,6 +104,7 @@ export async function runGoogleOAuthFlow(clientId, clientSecret, opts) {
65
104
  if (error) {
66
105
  res.writeHead(200, { "Content-Type": "text/html" });
67
106
  res.end("<h1>Authorization denied</h1><p>You can close this tab.</p>");
107
+ settled = true;
68
108
  clearTimeout(timeout);
69
109
  server.close();
70
110
  reject(new Error(`OAuth authorization denied: ${error}`));
@@ -75,30 +115,44 @@ export async function runGoogleOAuthFlow(clientId, clientSecret, opts) {
75
115
  res.end("<h1>Missing authorization code</h1>");
76
116
  return;
77
117
  }
118
+ res.writeHead(200, { "Content-Type": "text/html" });
119
+ res.end("<h1>Authorization successful!</h1><p>You can close this tab and return to the terminal.</p>");
120
+ await handleCode(code);
121
+ });
122
+ // Path 2: user pastes the URL manually (remote server flow)
123
+ waitForPastedUrl().then(async (pastedUrl) => {
124
+ if (settled)
125
+ return;
78
126
  try {
79
- const { tokens } = await oauth2Client.getToken(code);
80
- if (!tokens.refresh_token) {
81
- res.writeHead(200, { "Content-Type": "text/html" });
82
- res.end("<h1>Error</h1><p>No refresh token received. Try revoking access at " +
83
- '<a href="https://myaccount.google.com/permissions">Google Account Permissions</a> and retry.</p>');
127
+ const url = new URL(pastedUrl);
128
+ const code = url.searchParams.get("code");
129
+ const error = url.searchParams.get("error");
130
+ if (error) {
131
+ settled = true;
84
132
  clearTimeout(timeout);
85
133
  server.close();
86
- reject(new Error("No refresh_token received. Revoke app access at myaccount.google.com/permissions and retry."));
134
+ reject(new Error(`OAuth authorization denied: ${error}`));
87
135
  return;
88
136
  }
89
- res.writeHead(200, { "Content-Type": "text/html" });
90
- res.end("<h1>Authorization successful!</h1><p>You can close this tab and return to the terminal.</p>");
91
- clearTimeout(timeout);
92
- server.close();
93
- resolve(tokens.refresh_token);
137
+ if (!code) {
138
+ settled = true;
139
+ clearTimeout(timeout);
140
+ server.close();
141
+ reject(new Error("No authorization code found in the pasted URL."));
142
+ return;
143
+ }
144
+ await handleCode(code);
94
145
  }
95
- catch (err) {
96
- res.writeHead(500, { "Content-Type": "text/html" });
97
- res.end("<h1>Token exchange failed</h1><p>Check the terminal for details.</p>");
98
- clearTimeout(timeout);
99
- server.close();
100
- reject(err);
146
+ catch {
147
+ if (!settled) {
148
+ settled = true;
149
+ clearTimeout(timeout);
150
+ server.close();
151
+ reject(new Error("Invalid URL pasted. Please try again with `freeturtle connect gmail`."));
152
+ }
101
153
  }
154
+ }).catch(() => {
155
+ // stdin closed or readline error — ignore, server path may still work
102
156
  });
103
157
  });
104
158
  server.on("error", (err) => {
@@ -1 +1 @@
1
- {"version":3,"file":"google.js","sourceRoot":"","sources":["../../../src/oauth/google.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"google.js","sourceRoot":"","sources":["../../../src/oauth/google.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "freeturtle",
3
- "version": "0.1.16",
3
+ "version": "0.1.18",
4
4
  "description": "An open-source framework for deploying autonomous AI CEOs that run onchain businesses.",
5
5
  "type": "module",
6
6
  "main": "dist/bin/freeturtle.js",