flingit 0.0.36 → 0.0.38

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 (64) hide show
  1. package/dist/cli/commands/launch.d.ts +5 -6
  2. package/dist/cli/commands/launch.d.ts.map +1 -1
  3. package/dist/cli/commands/launch.js +6 -8
  4. package/dist/cli/commands/launch.js.map +1 -1
  5. package/dist/cli/commands/plugin.d.ts +4 -1
  6. package/dist/cli/commands/plugin.d.ts.map +1 -1
  7. package/dist/cli/commands/plugin.js +19 -19
  8. package/dist/cli/commands/plugin.js.map +1 -1
  9. package/dist/cli/commands/project.d.ts +5 -0
  10. package/dist/cli/commands/project.d.ts.map +1 -1
  11. package/dist/cli/commands/project.js +76 -6
  12. package/dist/cli/commands/project.js.map +1 -1
  13. package/dist/cli/commands/push.d.ts +2 -0
  14. package/dist/cli/commands/push.d.ts.map +1 -1
  15. package/dist/cli/commands/push.js +117 -109
  16. package/dist/cli/commands/push.js.map +1 -1
  17. package/dist/cli/commands/secret.d.ts.map +1 -1
  18. package/dist/cli/commands/secret.js +0 -14
  19. package/dist/cli/commands/secret.js.map +1 -1
  20. package/dist/cli/index.js +20 -14
  21. package/dist/cli/index.js.map +1 -1
  22. package/dist/cli/utils/cli-mode.d.ts +8 -0
  23. package/dist/cli/utils/cli-mode.d.ts.map +1 -0
  24. package/dist/cli/utils/cli-mode.js +12 -0
  25. package/dist/cli/utils/cli-mode.js.map +1 -0
  26. package/dist/cli/utils/cli-router.d.ts +12 -0
  27. package/dist/cli/utils/cli-router.d.ts.map +1 -0
  28. package/dist/cli/utils/cli-router.js +17 -0
  29. package/dist/cli/utils/cli-router.js.map +1 -0
  30. package/dist/index.d.ts +2 -0
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +1 -0
  33. package/dist/index.js.map +1 -1
  34. package/dist/runtime/email.d.ts +37 -0
  35. package/dist/runtime/email.d.ts.map +1 -0
  36. package/dist/runtime/email.js +43 -0
  37. package/dist/runtime/email.js.map +1 -0
  38. package/dist/types/email.d.ts +51 -0
  39. package/dist/types/email.d.ts.map +1 -0
  40. package/dist/types/email.js +9 -0
  41. package/dist/types/email.js.map +1 -0
  42. package/dist/worker-runtime/entry-extract.d.ts.map +1 -1
  43. package/dist/worker-runtime/entry-extract.js +8 -7
  44. package/dist/worker-runtime/entry-extract.js.map +1 -1
  45. package/dist/worker-runtime/entry.d.ts +2 -1
  46. package/dist/worker-runtime/entry.d.ts.map +1 -1
  47. package/dist/worker-runtime/entry.js +43 -1
  48. package/dist/worker-runtime/entry.js.map +1 -1
  49. package/dist/worker-runtime/index.d.ts +35 -7
  50. package/dist/worker-runtime/index.d.ts.map +1 -1
  51. package/dist/worker-runtime/index.js +40 -16
  52. package/dist/worker-runtime/index.js.map +1 -1
  53. package/dist/worker-runtime/plugin-common.d.ts.map +1 -1
  54. package/dist/worker-runtime/plugin-common.js +3 -0
  55. package/dist/worker-runtime/plugin-common.js.map +1 -1
  56. package/dist/worker-runtime/types.d.ts +80 -0
  57. package/dist/worker-runtime/types.d.ts.map +1 -0
  58. package/dist/worker-runtime/types.js +9 -0
  59. package/dist/worker-runtime/types.js.map +1 -0
  60. package/package.json +2 -1
  61. package/templates/default/dot-claude/skills/fling/.hash +1 -1
  62. package/templates/default/dot-claude/skills/fling/SKILL.md +10 -1
  63. package/templates/default/dot-claude/skills/fling/references/DISCORD.md +1 -1
  64. package/templates/default/dot-claude/skills/fling/references/SLACK.md +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-common.js","sourceRoot":"","sources":["../../src/worker-runtime/plugin-common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-common.js","sourceRoot":"","sources":["../../src/worker-runtime/plugin-common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Minimal local type definitions for Cloudflare Worker bindings.
3
+ *
4
+ * `@cloudflare/workers-types` can't be added to the root tsconfig because
5
+ * it would pollute CLI/Node.js code with incompatible Worker globals.
6
+ * These interfaces cover only the API surface the worker runtime actually uses.
7
+ */
8
+ export interface D1Meta {
9
+ changes: number;
10
+ last_row_id: number;
11
+ /** Extra fields like `duration`, `rows_read`, etc. from CF */
12
+ [key: string]: unknown;
13
+ }
14
+ export interface D1Result<T = unknown> {
15
+ results: T[];
16
+ success: boolean;
17
+ meta: D1Meta;
18
+ }
19
+ export interface D1PreparedStatement {
20
+ bind(...values: unknown[]): D1PreparedStatement;
21
+ first<T = unknown>(colName?: string): Promise<T | null>;
22
+ all<T = unknown>(): Promise<D1Result<T>>;
23
+ run<T = unknown>(): Promise<D1Result<T>>;
24
+ }
25
+ export interface D1Database {
26
+ prepare(query: string): D1PreparedStatement;
27
+ batch(statements: D1PreparedStatement[]): Promise<D1Result[]>;
28
+ exec(query: string): Promise<void>;
29
+ }
30
+ export interface R2Object {
31
+ key: string;
32
+ size: number;
33
+ etag: string;
34
+ uploaded: Date;
35
+ httpMetadata?: {
36
+ contentType?: string;
37
+ };
38
+ customMetadata?: Record<string, string>;
39
+ }
40
+ export interface R2ObjectBody extends R2Object {
41
+ body: ReadableStream<Uint8Array>;
42
+ bodyUsed: boolean;
43
+ arrayBuffer(): Promise<ArrayBuffer>;
44
+ text(): Promise<string>;
45
+ json<T>(): Promise<T>;
46
+ }
47
+ export interface R2Bucket {
48
+ put(key: string, value: ReadableStream | ArrayBuffer | ArrayBufferView | string | null, options?: {
49
+ httpMetadata?: {
50
+ contentType?: string;
51
+ };
52
+ customMetadata?: Record<string, string>;
53
+ }): Promise<R2Object>;
54
+ get(key: string): Promise<R2ObjectBody | null>;
55
+ head(key: string): Promise<R2Object | null>;
56
+ delete(keys: string | string[]): Promise<void>;
57
+ list(options?: {
58
+ prefix?: string;
59
+ cursor?: string;
60
+ limit?: number;
61
+ }): Promise<{
62
+ objects: R2Object[];
63
+ truncated: boolean;
64
+ cursor?: string;
65
+ }>;
66
+ }
67
+ export interface ServiceBinding {
68
+ fetch(input: string | Request | URL, init?: RequestInit): Promise<Response>;
69
+ }
70
+ export interface WorkerEnv {
71
+ DB?: D1Database;
72
+ STORAGE?: R2Bucket;
73
+ DISCORD_PLUGIN?: ServiceBinding;
74
+ SLACK_PLUGIN?: ServiceBinding;
75
+ FLING_PROJECT_ID?: string;
76
+ FLING_WORKER_SECRET?: string;
77
+ /** User-defined secrets accessed via `secrets.get(name)` */
78
+ [key: string]: unknown;
79
+ }
80
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/worker-runtime/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Minimal local type definitions for Cloudflare Worker bindings.
3
+ *
4
+ * `@cloudflare/workers-types` can't be added to the root tsconfig because
5
+ * it would pollute CLI/Node.js code with incompatible Worker globals.
6
+ * These interfaces cover only the API surface the worker runtime actually uses.
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/worker-runtime/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flingit",
3
- "version": "0.0.36",
3
+ "version": "0.0.38",
4
4
  "description": "Personal Software Platform - Build and deploy personal tools through conversation",
5
5
  "type": "module",
6
6
  "engines": {
@@ -77,6 +77,7 @@
77
77
  "dotenv": "^17.2.3",
78
78
  "esbuild": "^0.27.2",
79
79
  "hono": "^4.11.7",
80
+ "postal-mime": "^2.7.3",
80
81
  "tsx": "^4.19.0",
81
82
  "zod": "^3.25.76"
82
83
  },
@@ -1 +1 @@
1
- e0294d53404a06957f775dbbac27d6a1
1
+ 2c552c41df80a55c41c1d74f6e002c59
@@ -132,7 +132,13 @@ function App() {
132
132
 
133
133
  ## CLI Commands
134
134
 
135
- Always use `npm exec` to run the project's installed Fling (not global):
135
+ Always use `npm exec` to run the project's installed Fling (not global).
136
+
137
+ **Important:** The CLI must be called without a TTY (e.g., with stdout redirected), or with the `--cli` flag. When both stdin and stdout are a TTY and `--cli` is not passed, the CLI launches an interactive mode instead of executing commands. If you are running from an environment where a TTY may be present, always pass `--cli`:
138
+
139
+ ```bash
140
+ npm exec fling -- --cli push # Safe from any environment
141
+ ```
136
142
 
137
143
  ```bash
138
144
  npm exec fling dev # Start local server (API + Vite)
@@ -147,6 +153,7 @@ npm exec fling logs # View local logs
147
153
  npm exec fling push # Build and deploy to Cloudflare Workers
148
154
  npm exec fling project slug # Show current project slug and URL
149
155
  npm exec fling project slug:set <new-slug> # Change project slug (affects URL)
156
+ npm exec fling project takedown # Delete project and all data
150
157
  npm exec fling cron list # List registered cron jobs
151
158
  npm exec fling cron history <name> # View invocation history
152
159
  npm exec fling cron trigger <name> # Manually trigger a cron job
@@ -307,6 +314,8 @@ This gives collaborators:
307
314
 
308
315
  10. **Feedback** - If the user encounters problems that directly or indirectly have to do with fling, suggest to them leaving feedback. Details in `references/FEEDBACK.md`.
309
316
 
317
+ 11. **Never run `fling project takedown` without explicit user confirmation** - This command permanently deletes the deployed project including all data in the production database, all files in storage, and the deployed worker code. You MUST NOT run this command unless the user has explicitly confirmed that they understand and accept that all data in their published app will be permanently lost. Always explain what will be destroyed before asking for confirmation.
318
+
310
319
  **If the user's request might hit platform limitations, warn them early and suggest alternatives.**
311
320
 
312
321
  ## Migrations
@@ -315,7 +315,7 @@ npm exec fling plugin remove discord # Disconnect, release all servers
315
315
 
316
316
  4. **Plugin must be installed first** — Run `fling plugin install discord` before using any Discord features. Check with `fling plugin permissions discord`.
317
317
 
318
- 5. **Rate limit: 60 things/hour per project** — `reply`, `followup`, `sendMessage`, `editMessage`, and `addReaction` all count as "things". When exceeded, methods throw an error containing `PLUGIN_RATE_LIMIT_EXCEEDED`.
318
+ 5. **Rate limit: 3 per 60 seconds per project** — `reply`, `followup`, `sendMessage`, `editMessage`, and `addReaction` all count as "things". When exceeded, methods throw an error containing `PLUGIN_RATE_LIMIT_EXCEEDED`.
319
319
 
320
320
  ```typescript
321
321
  try {
@@ -213,7 +213,7 @@ npm exec fling plugin remove slack # Disconnect, release all workspaces
213
213
 
214
214
  4. **Plugin must be installed first** — Run `fling plugin install slack` before using any Slack features. Check with `fling plugin permissions slack`.
215
215
 
216
- 5. **Rate limit: 60 things/hour per project** — `sendMessage`, `editMessage`, `addReaction`, and thread replies all count as "things". When exceeded, methods throw an error containing `PLUGIN_RATE_LIMIT_EXCEEDED`.
216
+ 5. **Rate limit: 3 per 60 seconds per project** — `sendMessage`, `editMessage`, `addReaction`, and thread replies all count as "things". When exceeded, methods throw an error containing `PLUGIN_RATE_LIMIT_EXCEEDED`.
217
217
 
218
218
  ```typescript
219
219
  try {