turbo_promptable 0.5.0
turbo_promptable: ^0.5.0 copied to clipboard
Object-Oriented Prompting framework for defining AI agent prompts, roles, workflows, and tools as type-safe Dart objects.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.5.0 - 2026-05-03 #
Added #
TCliTool.spawn()method for constructing CLI spawn commands with configurable system prompt, allowed tools, model, yolo mode, and headless flagsTCliToolresume, system prompt, allowed tools, yolo, and model parameter buildersTConfigSourceenum for distinguishing configuration originsTSpawnablebase class (underworkspace/models/meta/) for agent-like models withid,allowedTools,yolo,model, andheadlessfields
Changed #
- BREAKING: Moved
TSpawnablefromspawn/abstracts/toworkspace/models/meta/with a new constructor API (nameas positional,idas required named, plusallowedTools,yolo,model,headlessfields) - BREAKING:
Agentnow extends the newTSpawnableand requiresid,allowedTools,yolo,model,headlessparameters EndGoalnow requiresnameas a required named parameter- Regenerated all JSON serialization files to match updated model signatures
Fixed #
- Removed unused imports and unnecessary import directives flagged by the analyzer
0.4.0 - 2026-04-17 #
Added #
- Tool command model
ToolCommandfor declaring individual operations that aToolexposes (CLI subcommands, REST endpoints, MCP functions, etc.) - Tool parameter models
ToolParameterandToolParameterOptionfor describing command inputs, enumerated options, defaults, and required flags - Tool ability model
ToolAbilityfor describing the capabilities surfaced by a tool Mcptool model for declaring Model Context Protocol servers alongside the existingApi,Cli, andScripttool kindsTMetaDatais now re-exported frommeta/t_promptable.dartso downstream models that depend on it no longer need a separate import
Changed #
- BREAKING: Removed the
Agentroot model. UsePersonaextended withTSpawnablefields (cliTool,command,promptDelivery) to represent a launchable agent. - BREAKING: Dropped the
metaDataconstructor parameter from leaf context/root models that do not need it (Actor,Concept,Documentation,Project,Stakeholder,Subject,Checklist,Context, and related models). Pass metadata only on the models that still declare the parameter. - BREAKING: Removed barrel exports for internal/auxiliary members:
core/constants/tp_keys.dart,core/models/t_config.dart,core/models/t_embed_type.dart,core/models/t_md_section.dart,core/models/t_render_type.dart,core/typedefs/t_body_builder_def.dart,workspace/models/checklists/acceptance_criteria.dart,workspace/models/checklists/constraints.dart,workspace/models/checklists/non_goals.dart, andworkspace/models/meta/t_tag.dart. Consumers that relied on those names should import the deep paths directly or model their own equivalents. TPromptable.mdFactorynow derives its body fromtoJson()(minus the metadata key) so frontmatter/body separation is consistent across every subclass.- Bumped minimum
turbo_serializableconstraint to^0.5.0(pulls in thets_map_extensionrename and the wider barrel exposure from that release).
Fixed #
- Removed unused and unnecessary imports flagged by the analyzer in
workspace/models/context/collection.dart,workspace/models/root/activity.dart, andworkspace/models/root/persona.dart.
0.3.0 - 2026-04-15 #
Changed #
- BREAKING: Remove Dart source rendering from workspace entities (per-entity emission methods, helper mixins/classes under
lib/core/helpers/, and the dedicated rendering test file). JSON, YAML, Markdown, and XML serialization remain. - Document public members on
Abilityso pub.dev documentation scoring stays at or above the 20% API threshold.
0.2.0 - 2026-04-13 #
Added #
TSpawnablebase class for promptable models that can be spawned as CLI processesTCliToolenum for supported CLI tools (Claude Code, Cursor, Windsurf, etc.)TPromptDeliveryenum for prompt delivery methods (system, user, stdin, file)- Spawn module with
TFile,TFolder, andTSpawnConfigmodels - New root models:
Activity,Agent,Checklist,Context,Goal,Input,Instruction,Issue,Output,Persona,PromptField,Role,Spec,Template,Tool,Workflow - New spec models:
Mockup,Module,Prototype,Taskwith cross-referencing viaOf*interfaces TDartRenderHelpermixin for rendering models as Dart constructor callsTDartStringHelperfor Dart-safe string escaping- Workspace abstracts:
OfAbilities,OfFeatures,OfIssues,OfJourneys,OfMockups,OfModules,OfPrds,OfProjects,OfPrototypes,OfScenarios Projectcontext modelStepworkflow model with ordering and substep support
Changed #
- BREAKING: Removed
TTaskroot model — replaced by the richerTaskspec model - BREAKING: Expanded
Rolefrom a simple model to a full spawnable with activities, checklists, instructions, templates, tools, and workflows - BREAKING:
PersonaandAgentnow extendTSpawnablewith CLI tool and command support - Enriched
Activitywithpersona,goal,input,output,context, andworkflowfields - Enriched
Inputwithformat,constraints, andvalidationsfields - Enriched
Outputwithformat,constraints,validations, anddeliverablesfields - Enriched
Instructionwithscope,priority,applicability, andexamplesfields - Enriched spec models (
Ability,Feature,Requirement,Scenario) with cross-referencing IDs
0.1.0 - 2026-04-10 #
Added #
- Workspace model system with 8 domain groups: checklists, context, instructions, memories, meta, root, specs, tools, and workflows
- Checklist models:
TAcceptanceCriteria,TConstraints,TNonGoalswith JSON serialization - Context models:
TActor,TCollection,TConcept,TDocumentation,TReference,TStakeholder,TSubjectwith JSON serialization - Instruction models:
TConvention,TSkillwith JSON serialization - Memory models:
TDecision,TEvent,TInsight,TMeeting,TProgresswith JSON serialization - Meta models:
TMetaData,TPromptablewith JSON serialization - Root models:
TActivity,TAgent,TChecklist,TContext,TGoal,TInput,TInstruction,TIssue,TMemory,TOutput,TPersona,TPromptField,TRole,TSpec,TTask,TTemplate,TTool,TWorkflowwith JSON serialization - Spec models:
TAbility,TFeature,TJourney,TRequirement,TScenariowith JSON serialization - Tool models:
TApi,TCli,TScriptwith JSON serialization - Workflow model:
TStepwith JSON serialization - Enums:
TBodyType,TRefType - Core extensions:
TCollectionExtensionsfor YAML and XML serialization of lists/maps - Core models:
TConfig,TEmbedType,TMdSection,TRenderType - Spawn models:
TFile,TFolder,TSpawnConfig json_annotationdependency for generated JSON serialization
Changed #
- BREAKING: Restructured from flat DTO-based architecture to domain-grouped workspace model system
- BREAKING: Removed all previous DTO classes (TeamDto, AreaDto, RoleDto, CollectionDto, InstructionDto, etc.)
- BREAKING: Removed example files and export configuration system (ExportConfig, ExportType, ExportResult)
- Replaced
pathdependency onturbo_serializablewith versioned constraint^0.3.0
0.0.2 - 2026-03-19 #
0.0.1 - 2026-01-01 #
Added #
- Initial release
- TurboPromptable base class extending TurboSerializable
- Convenience
nameanddescriptionconstructor parameters on all DTOs - Automatic FrontmatterDto creation from name/description
- ExportConfig with fileType, bodyType, shouldExport, fileName
- ExportType enum (md, yaml, json, xml, txt, dart)
- BodyType enum (markdown, yaml, json, xml, dart)
- Tree structure with config inheritance via resolveConfig
- YAML frontmatter generation via generateFrontmatter
- Body export via exportBody
- FrontmatterDto for structured metadata (name, description, values)
- ExportResult for export output (body, frontmatter, config, promptable)
- export() method with shouldExport filtering
- exportTree() method for recursive tree export
- Hierarchy DTOs: TeamDto, AreaDto, RoleDto
- Knowledge DTOs: CollectionDto, InstructionDto, WorkflowDto, ReferenceDto, TemplateDto, RawBoxDto, ActivityDto, AgentDto, RepoDto
- Tool DTOs: ToolDto, ApiDto, ScriptDto, ToolMethodDto, ToolParameterDto
- PersonaDto for agent identity