@agent-factory-platform/agent-react 0.5.0 → 0.7.0

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.
package/README.md CHANGED
@@ -14,6 +14,12 @@ Use the exact Agent Factory version across packages in one application.
14
14
 
15
15
  This package owns reusable, business-free infrastructure and lifecycle contracts. Product prompts, domain tools, policies, credentials, data, and deployment configuration remain in the consuming application.
16
16
 
17
+ `AgentChat`, Session/Profile/Memory controllers and `WorkflowWorkbench` cover the
18
+ reusable conversation and Workflow lifecycle. The Workflow controller uses the
19
+ typed shared service for definitions, revisions, instances, runs, diagnostics,
20
+ draft confirmation and controls. Products provide routing and domain-specific
21
+ cards through the existing slots.
22
+
17
23
  ## Documentation
18
24
 
19
25
  API and package documentation: [https://www.npmjs.com/package/@agent-factory-platform/agent-react](https://www.npmjs.com/package/@agent-factory-platform/agent-react)
@@ -1 +1 @@
1
- .af-agent-chat,.af-agent-studio{color:var(--color-ink);font-family:var(--font-product, system-ui, sans-serif)}.af-agent-chat{display:grid;grid-template-columns:minmax(12rem,15rem) minmax(0,1fr);min-height:36rem;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface-card)}.af-agent-chat>.af-agent-conversation:only-child{grid-column:1 / -1}.af-agent-threads{display:flex;min-width:0;flex-direction:column;border-right:1px solid var(--color-divider);background:var(--color-surface-fog)}.af-agent-threads__header,.af-agent-conversation__header{display:flex;min-height:3.5rem;align-items:center;justify-content:space-between;gap:.75rem;padding:.625rem .75rem;border-bottom:1px solid var(--color-divider)}.af-agent-threads__list{min-height:0;overflow-y:auto;padding:.375rem}.af-agent-thread-row{display:flex;align-items:center;border-radius:var(--radius-control)}.af-agent-thread-row:hover,.af-agent-thread-row[data-active]{background:var(--color-surface-hover)}.af-agent-thread-row__select{display:flex;min-height:2.75rem;min-width:0;flex:1;align-items:center;justify-content:space-between;gap:.5rem;padding:0 .625rem;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.af-agent-thread-row__select span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.af-agent-icon-button{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:0;background:transparent;color:var(--color-graphite);cursor:pointer}.af-agent-thread-row:not(:hover):not(:focus-within) .af-agent-icon-button{opacity:0}.af-agent-conversation{display:grid;min-width:0;min-height:36rem;grid-template-rows:auto minmax(0,1fr) auto;background:var(--color-surface-canvas)}.af-agent-conversation__header{flex-wrap:wrap;background:var(--color-surface-card)}.af-agent-title{display:flex;min-width:0;align-items:center;gap:.625rem}.af-agent-title>div{display:grid;min-width:0}.af-agent-title strong{font-size:.875rem}.af-agent-title span{overflow:hidden;color:var(--color-graphite);font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.af-agent-resources{display:flex;min-width:0;flex:1;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.375rem}.af-agent-resources button{min-height:2rem}.af-agent-option-meta{max-width:10rem;overflow:hidden;color:var(--color-graphite);font-size:.6875rem;text-overflow:ellipsis;white-space:nowrap}.af-agent-messages{min-height:0;overflow-y:auto;padding:1.25rem clamp(.75rem,3vw,2.5rem)}.af-agent-message{display:grid;max-width:52rem;grid-template-columns:1.875rem minmax(0,1fr);gap:.625rem;margin:0 auto 1.25rem}.af-agent-message__body>strong{display:block;margin-bottom:.25rem;font-size:.75rem}.af-agent-message__content{font-size:.875rem;line-height:1.65;white-space:pre-wrap}.af-agent-message[data-role=user] .af-agent-message__content{display:inline-block;padding:.625rem .75rem;border-radius:var(--radius-selection);background:var(--color-surface-warm)}.af-agent-thinking{color:var(--color-graphite)}.af-agent-thinking:after{content:"";display:inline-block;width:1.1rem;height:.25rem;margin-left:.25rem;background:radial-gradient(circle,var(--color-graphite) 1.5px,transparent 2px) 0 50% / .35rem .25rem repeat-x;animation:af-agent-pulse 1s ease-in-out infinite}.af-agent-surface{margin-top:.75rem}.af-agent-trace{max-width:52rem;margin:0 auto 1rem;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-card);font-size:.75rem}.af-agent-trace summary{display:flex;min-height:2.75rem;align-items:center;gap:.5rem;padding:0 .75rem;cursor:pointer}.af-agent-trace ol{margin:0;padding:0 .75rem .625rem 2rem;color:var(--color-graphite)}.af-agent-trace li{padding:.25rem 0}.af-agent-trace li span{display:flex;align-items:center;gap:.375rem}.af-agent-trace li span:last-child{margin-left:1.125rem;font-size:.6875rem}.af-agent-composer{display:grid;width:calc(100% - 1.5rem);max-width:52rem;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.5rem;margin:0 auto .75rem;padding:.625rem;border:1px solid var(--color-border);border-radius:var(--radius-overlay);background:var(--color-surface-card);box-shadow:var(--shadow-pop)}.af-agent-composer textarea{min-height:2.75rem;max-height:10rem;resize:none}.af-agent-composer__resources{display:flex;grid-column:1 / -1;flex-wrap:wrap;gap:.375rem}.af-agent-composer__resources button{margin-left:.25rem;border:0;background:transparent;color:inherit;cursor:pointer}.af-agent-composer__actions{display:flex;align-items:center;gap:.375rem}.af-agent-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem}.af-agent-action [class*=CardLabel],.af-agent-action p{margin-top:.375rem;color:var(--color-graphite);font-size:.75rem}.af-agent-action__buttons{display:flex;grid-column:1 / -1;gap:.5rem}.af-agent-persona{display:grid;gap:1rem}.af-agent-persona__intro{display:flex;align-items:center;gap:.75rem}.af-agent-persona label{display:grid;gap:.375rem;color:var(--color-graphite);font-size:.75rem}.af-agent-studio{display:grid;grid-template-columns:minmax(18rem,24rem) minmax(0,1fr);overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface-card)}.af-agent-studio>section{min-width:0;padding:1rem}.af-agent-studio>section+section{border-left:1px solid var(--color-divider);background:var(--color-surface-canvas)}.af-agent-settings{display:grid;gap:1rem}.af-agent-settings fieldset{display:grid;gap:.75rem;min-width:0;margin:0;padding:1rem 0 0;border:0;border-top:1px solid var(--color-divider)}.af-agent-settings legend{padding:0;color:var(--color-ink);font-weight:600}.af-agent-settings label{display:grid;gap:.375rem;color:var(--color-graphite);font-size:.75rem}.af-agent-settings__limits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.af-agent-settings__checklist{display:grid;gap:.375rem}.af-agent-settings__tool{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.5rem;border-radius:var(--radius-control);background:var(--color-surface-muted)}.af-agent-settings__save{display:flex;align-items:center;gap:.75rem}.af-agent-settings__save [role=alert]{color:var(--color-danger, #b42318)}.af-agent-composition{display:grid;gap:.75rem}.af-agent-composition>header{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.af-agent-composition__issues{margin:0;padding:.75rem .75rem .75rem 1.75rem;border:1px solid var(--color-warning, #d97706);border-radius:var(--radius-control)}.af-agent-composition__items{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.5rem}.af-agent-composition__items article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem}.af-agent-composition__items p{grid-column:1 / -1;margin:0;color:var(--color-graphite);font-size:.75rem;overflow-wrap:anywhere}.af-agent-manager{display:grid;gap:.75rem}.af-agent-manager>header{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.af-agent-manager__list{display:grid;gap:.5rem}.af-agent-manager__list article{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.af-agent-manager__list article>div:first-child{min-width:0}.af-agent-manager__list p,.af-agent-task-tree p,.af-agent-revisions p{margin:.25rem 0 0;color:var(--color-graphite);font-size:.75rem;overflow-wrap:anywhere}.af-agent-manager__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.375rem}.af-agent-task-tree,.af-agent-revisions{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.af-agent-task-tree li,.af-agent-revisions li{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:start;gap:.625rem;padding:.75rem;border:1px solid var(--color-divider);border-radius:var(--radius-control);background:var(--color-surface-card)}.af-agent-task-tree li>span{width:.625rem;height:.625rem;margin-top:.25rem;border-radius:50%;background:var(--color-data-blue);box-shadow:0 0 0 .25rem color-mix(in srgb,var(--color-data-blue) 16%,transparent)}@keyframes af-agent-pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.af-agent-thinking:after{animation:none}}@media(max-width:720px){.af-agent-chat{grid-template-columns:minmax(0,1fr);min-height:42rem}.af-agent-threads{max-height:8rem;border-right:0;border-bottom:1px solid var(--color-divider)}.af-agent-threads__list{display:flex;gap:.25rem}.af-agent-thread-row{min-width:10rem}.af-agent-thread-row:not(:hover):not(:focus-within) .af-agent-icon-button{opacity:1}.af-agent-conversation{min-height:34rem}.af-agent-conversation__header{align-items:flex-start}.af-agent-resources{flex-basis:100%;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.125rem}.af-agent-studio{grid-template-columns:1fr}.af-agent-studio>section+section{border-top:1px solid var(--color-divider);border-left:0}.af-agent-settings__limits,.af-agent-settings__tool,.af-agent-task-tree li,.af-agent-revisions li{grid-template-columns:1fr}.af-agent-manager__list article{flex-direction:column}.af-agent-manager__actions{justify-content:flex-start}}
1
+ .af-agent-chat,.af-agent-studio{color:var(--color-ink);font-family:var(--font-product, system-ui, sans-serif)}.af-agent-chat{display:grid;grid-template-columns:minmax(12rem,15rem) minmax(0,1fr);min-height:36rem;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface-card)}.af-agent-chat>.af-agent-conversation:only-child{grid-column:1 / -1}.af-agent-threads{display:flex;min-width:0;flex-direction:column;border-right:1px solid var(--color-divider);background:var(--color-surface-fog)}.af-agent-threads__header,.af-agent-conversation__header{display:flex;min-height:3.5rem;align-items:center;justify-content:space-between;gap:.75rem;padding:.625rem .75rem;border-bottom:1px solid var(--color-divider)}.af-agent-threads__list{min-height:0;overflow-y:auto;padding:.375rem}.af-agent-thread-row{display:flex;align-items:center;border-radius:var(--radius-control)}.af-agent-thread-row:hover,.af-agent-thread-row[data-active]{background:var(--color-surface-hover)}.af-agent-thread-row__select{display:flex;min-height:2.75rem;min-width:0;flex:1;align-items:center;justify-content:space-between;gap:.5rem;padding:0 .625rem;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.af-agent-thread-row__select span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.af-agent-icon-button{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:0;background:transparent;color:var(--color-graphite);cursor:pointer}.af-agent-thread-row:not(:hover):not(:focus-within) .af-agent-icon-button{opacity:0}.af-agent-conversation{display:grid;min-width:0;min-height:36rem;grid-template-rows:auto minmax(0,1fr) auto;background:var(--color-surface-canvas)}.af-agent-conversation__header{flex-wrap:wrap;background:var(--color-surface-card)}.af-agent-title{display:flex;min-width:0;align-items:center;gap:.625rem}.af-agent-title>div{display:grid;min-width:0}.af-agent-title strong{font-size:.875rem}.af-agent-title span{overflow:hidden;color:var(--color-graphite);font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.af-agent-resources{display:flex;min-width:0;flex:1;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.375rem}.af-agent-resources button{min-height:2rem}.af-agent-option-meta{max-width:10rem;overflow:hidden;color:var(--color-graphite);font-size:.6875rem;text-overflow:ellipsis;white-space:nowrap}.af-agent-messages{min-height:0;overflow-y:auto;padding:1.25rem clamp(.75rem,3vw,2.5rem)}.af-agent-message{display:grid;max-width:52rem;grid-template-columns:1.875rem minmax(0,1fr);gap:.625rem;margin:0 auto 1.25rem}.af-agent-message__body>strong{display:block;margin-bottom:.25rem;font-size:.75rem}.af-agent-message__content{font-size:.875rem;line-height:1.65;white-space:pre-wrap}.af-agent-message[data-role=user] .af-agent-message__content{display:inline-block;padding:.625rem .75rem;border-radius:var(--radius-selection);background:var(--color-surface-warm)}.af-agent-thinking{color:var(--color-graphite)}.af-agent-thinking:after{content:"";display:inline-block;width:1.1rem;height:.25rem;margin-left:.25rem;background:radial-gradient(circle,var(--color-graphite) 1.5px,transparent 2px) 0 50% / .35rem .25rem repeat-x;animation:af-agent-pulse 1s ease-in-out infinite}.af-agent-surface{margin-top:.75rem}.af-agent-trace{max-width:52rem;margin:0 auto 1rem;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-card);font-size:.75rem}.af-agent-trace summary{display:flex;min-height:2.75rem;align-items:center;gap:.5rem;padding:0 .75rem;cursor:pointer}.af-agent-trace ol{margin:0;padding:0 .75rem .625rem 2rem;color:var(--color-graphite)}.af-agent-trace li{padding:.25rem 0}.af-agent-trace li span{display:flex;align-items:center;gap:.375rem}.af-agent-trace li span:last-child{margin-left:1.125rem;font-size:.6875rem}.af-agent-composer{display:grid;width:calc(100% - 1.5rem);max-width:52rem;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.5rem;margin:0 auto .75rem;padding:.625rem;border:1px solid var(--color-border);border-radius:var(--radius-overlay);background:var(--color-surface-card);box-shadow:var(--shadow-pop)}.af-agent-composer textarea{min-height:2.75rem;max-height:10rem;resize:none}.af-agent-composer__resources{display:flex;grid-column:1 / -1;flex-wrap:wrap;gap:.375rem}.af-agent-composer__resources button{margin-left:.25rem;border:0;background:transparent;color:inherit;cursor:pointer}.af-agent-composer__actions{display:flex;align-items:center;gap:.375rem}.af-agent-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem}.af-agent-action [class*=CardLabel],.af-agent-action p{margin-top:.375rem;color:var(--color-graphite);font-size:.75rem}.af-agent-action__buttons{display:flex;grid-column:1 / -1;gap:.5rem}.af-agent-persona{display:grid;gap:1rem}.af-agent-persona__intro{display:flex;align-items:center;gap:.75rem}.af-agent-persona label{display:grid;gap:.375rem;color:var(--color-graphite);font-size:.75rem}.af-agent-studio{display:grid;grid-template-columns:minmax(18rem,24rem) minmax(0,1fr);overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface-card)}.af-agent-studio>section{min-width:0;padding:1rem}.af-agent-studio>section+section{border-left:1px solid var(--color-divider);background:var(--color-surface-canvas)}.af-agent-settings{display:grid;gap:1rem}.af-agent-settings fieldset{display:grid;gap:.75rem;min-width:0;margin:0;padding:1rem 0 0;border:0;border-top:1px solid var(--color-divider)}.af-agent-settings legend{padding:0;color:var(--color-ink);font-weight:600}.af-agent-settings label{display:grid;gap:.375rem;color:var(--color-graphite);font-size:.75rem}.af-agent-settings__limits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.af-agent-settings__checklist{display:grid;gap:.375rem}.af-agent-settings__tool{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.5rem;border-radius:var(--radius-control);background:var(--color-surface-muted)}.af-agent-settings__save{display:flex;align-items:center;gap:.75rem}.af-agent-settings__save [role=alert]{color:var(--color-danger, #b42318)}.af-agent-composition{display:grid;gap:.75rem}.af-agent-composition>header{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.af-agent-composition__issues{margin:0;padding:.75rem .75rem .75rem 1.75rem;border:1px solid var(--color-warning, #d97706);border-radius:var(--radius-control)}.af-agent-composition__items{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.5rem}.af-agent-composition__items article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem}.af-agent-composition__items p{grid-column:1 / -1;margin:0;color:var(--color-graphite);font-size:.75rem;overflow-wrap:anywhere}.af-agent-manager{display:grid;gap:.75rem}.af-agent-manager>header{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.af-agent-manager__list{display:grid;gap:.5rem}.af-agent-manager__list article{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.af-agent-manager__list article>div:first-child{min-width:0}.af-agent-manager__list p,.af-agent-task-tree p,.af-agent-revisions p{margin:.25rem 0 0;color:var(--color-graphite);font-size:.75rem;overflow-wrap:anywhere}.af-agent-revisions pre{white-space:pre-wrap;overflow-wrap:anywhere}.af-agent-manager__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.375rem}.af-agent-task-tree,.af-agent-revisions{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.af-agent-task-tree li,.af-agent-revisions li{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:start;gap:.625rem;padding:.75rem;border:1px solid var(--color-divider);border-radius:var(--radius-control);background:var(--color-surface-card)}.af-agent-task-tree li>span{width:.625rem;height:.625rem;margin-top:.25rem;border-radius:50%;background:var(--color-data-blue);box-shadow:0 0 0 .25rem color-mix(in srgb,var(--color-data-blue) 16%,transparent)}@keyframes af-agent-pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.af-agent-thinking:after{animation:none}}@media(max-width:720px){.af-agent-chat{grid-template-columns:minmax(0,1fr);min-height:42rem}.af-agent-threads{max-height:8rem;border-right:0;border-bottom:1px solid var(--color-divider)}.af-agent-threads__list{display:flex;gap:.25rem}.af-agent-thread-row{min-width:10rem}.af-agent-thread-row:not(:hover):not(:focus-within) .af-agent-icon-button{opacity:1}.af-agent-conversation{min-height:34rem}.af-agent-conversation__header{align-items:flex-start}.af-agent-resources{flex-basis:100%;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.125rem}.af-agent-studio{grid-template-columns:1fr}.af-agent-studio>section+section{border-top:1px solid var(--color-divider);border-left:0}.af-agent-settings__limits,.af-agent-settings__tool,.af-agent-task-tree li,.af-agent-revisions li{grid-template-columns:1fr}.af-agent-manager__list article{flex-direction:column}.af-agent-manager__actions{justify-content:flex-start}}
package/dist/index.d.ts CHANGED
@@ -4,4 +4,5 @@ export { AgentSlotRegistry, dataFallback, type AgentDataDecoder, type AgentSlot,
4
4
  export { AgentActionCard, AgentChat, AgentComposer, AgentConversation, AgentExecutionTrace, AgentResourceBar, AgentSessionList, DEFAULT_AGENT_UI_LABELS, type AgentInputResource, type AgentUiLabels } from "./ui";
5
5
  export { AgentCompositionPanel, AgentProfileEditor, AgentProfileSettings, AgentStudio, compositionIssueLabel } from "./profile";
6
6
  export { AgentCapabilityCatalog, AgentCollaborationCenter, AgentDocumentLibrary, AgentMemoryCenter, AgentRevisionHistory, capabilityKey, type AgentDocumentResource } from "./management";
7
+ export { WorkflowWorkbench, WorkflowWorkbenchController, useWorkflowWorkbench, type WorkflowWorkbenchState, type WorkflowWorkbenchTransport } from "./workflow";
7
8
  export { AgentSessionModel, type AgentProjectionItem, type AgentSessionProjection, type AgentSessionState, type AgentSessionTransport } from "@agent-factory-platform/client";