Functionless
Compile TypeScript code to AWS "Functionless" Step Functions and Event Bridge Pipes
Install / Use
/learn @sam-goodwin/FunctionlessREADME
Functionless is an attempt to compile TypeScript code into AWS "Functionless" definitions (e.g. Step Functions or Event Bridge Pipes).
It primarily focused on transforming a TypeScript function into an AWS Step Function workflow definition, but Step Functions weren't Turing Complete (lacked JSONAta back then), so ultimately failed.
import { StepFunction } from "@functionless/aws-stepfunctions";
import MyDatabase from "./table";
export default StepFunction(async (input: { todoId: string }) => {
await StepFunction.waitSeconds(10);
await MyDatabase.attributes.delete({
Key: {
pk: {
S: "todo",
},
sk: {
S: input.todoId,
},
},
});
});
The lesson learned from this project is to find solutions that don't necessitate static analysis and compiler tools. "Don't fight your language".
Related Skills
gh-issues
346.8kFetch GitHub issues, spawn sub-agents to implement fixes and open PRs, then monitor and address PR review comments. Usage: /gh-issues [owner/repo] [--label bug] [--limit 5] [--milestone v1.0] [--assignee @me] [--fork user/repo] [--watch] [--interval 5] [--reviews-only] [--cron] [--dry-run] [--model glm-5] [--notify-channel -1002381931352]
oracle
346.8kBest practices for using the oracle CLI (prompt + file bundling, engines, sessions, and file attachment patterns).
taskflow-inbox-triage
346.8kname: taskflow-inbox-triage description: Example TaskFlow authoring pattern for inbox triage. Use when messages need different treatment based on intent, with some routes notifying immediately, some w
taskflow
346.8kname: taskflow description: Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layer
