@promptbook/utils 0.103.0-9 → 0.104.0-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 +59 -35
- package/esm/index.es.js +225 -143
- package/esm/index.es.js.map +1 -1
- package/esm/typings/books/index.d.ts +0 -81
- package/esm/typings/servers.d.ts +9 -7
- package/esm/typings/src/_packages/browser.index.d.ts +6 -0
- package/esm/typings/src/_packages/cli.index.d.ts +4 -0
- package/esm/typings/src/_packages/components.index.d.ts +22 -8
- package/esm/typings/src/_packages/core.index.d.ts +58 -18
- package/esm/typings/src/_packages/node.index.d.ts +2 -2
- package/esm/typings/src/_packages/remote-server.index.d.ts +2 -0
- package/esm/typings/src/_packages/types.index.d.ts +70 -8
- package/esm/typings/src/_packages/utils.index.d.ts +6 -0
- package/esm/typings/src/_packages/wizard.index.d.ts +4 -0
- package/esm/typings/src/book-2.0/agent-source/AgentBasicInformation.d.ts +20 -5
- package/esm/typings/src/book-2.0/agent-source/AgentModelRequirements.d.ts +17 -1
- package/esm/typings/src/book-2.0/agent-source/AgentSourceParseResult.d.ts +3 -2
- package/esm/typings/src/book-2.0/agent-source/computeAgentHash.d.ts +8 -0
- package/esm/typings/src/book-2.0/agent-source/createCommitmentRegex.d.ts +3 -3
- package/esm/typings/src/book-2.0/agent-source/createDefaultAgentName.d.ts +8 -0
- package/esm/typings/src/book-2.0/agent-source/normalizeAgentName.d.ts +9 -0
- package/esm/typings/src/book-2.0/agent-source/padBook.d.ts +18 -0
- package/esm/typings/src/book-2.0/agent-source/parseAgentSourceWithCommitments.d.ts +1 -1
- package/esm/typings/src/book-2.0/agent-source/string_book.d.ts +3 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.d.ts +6 -1
- package/esm/typings/src/book-components/BookEditor/BookEditor.d.ts +85 -14
- package/esm/typings/src/book-components/BookEditor/BookEditorActionbar.d.ts +18 -0
- package/esm/typings/src/book-components/BookEditor/BookEditorMonaco.d.ts +5 -0
- package/esm/typings/src/book-components/Chat/AgentChat/AgentChat.d.ts +17 -0
- package/esm/typings/src/book-components/Chat/AgentChat/AgentChatProps.d.ts +13 -0
- package/esm/typings/src/book-components/Chat/Chat/ChatProps.d.ts +16 -0
- package/esm/typings/src/book-components/Chat/LlmChat/LlmChatProps.d.ts +5 -0
- package/esm/typings/src/book-components/Chat/MarkdownContent/MarkdownContent.d.ts +15 -0
- package/esm/typings/src/book-components/Chat/MockedChat/MockedChat.d.ts +5 -0
- package/esm/typings/src/book-components/Chat/save/_common/ChatSaveFormatDefinition.d.ts +1 -1
- package/esm/typings/src/book-components/Chat/save/html/htmlSaveFormatDefinition.d.ts +1 -0
- package/esm/typings/src/book-components/Chat/save/pdf/pdfSaveFormatDefinition.d.ts +4 -0
- package/esm/typings/src/book-components/Chat/types/ChatParticipant.d.ts +1 -1
- package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgentIntegration.d.ts +67 -0
- package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgentSeamlessIntegration.d.ts +23 -0
- package/esm/typings/src/book-components/Qr/BrandedQrCode.d.ts +18 -0
- package/esm/typings/src/book-components/Qr/GenericQrCode.d.ts +10 -0
- package/esm/typings/src/book-components/Qr/PromptbookQrCode.d.ts +18 -0
- package/esm/typings/src/book-components/Qr/useQrCode.d.ts +15 -0
- package/esm/typings/src/book-components/_common/Dropdown/Dropdown.d.ts +15 -0
- package/esm/typings/src/book-components/_common/HamburgerMenu/HamburgerMenu.d.ts +12 -0
- package/esm/typings/src/book-components/_common/Modal/Modal.d.ts +2 -2
- package/esm/typings/src/book-components/_common/Tooltip/Tooltip.d.ts +47 -0
- package/esm/typings/src/book-components/icons/AboutIcon.d.ts +9 -0
- package/esm/typings/src/book-components/icons/CameraIcon.d.ts +11 -0
- package/esm/typings/src/book-components/icons/CloseIcon.d.ts +4 -8
- package/esm/typings/src/book-components/icons/DownloadIcon.d.ts +9 -0
- package/esm/typings/src/book-components/icons/ExitFullscreenIcon.d.ts +7 -0
- package/esm/typings/src/book-components/icons/FullscreenIcon.d.ts +7 -0
- package/esm/typings/src/book-components/icons/MenuIcon.d.ts +12 -0
- package/esm/typings/src/book-components/icons/MicIcon.d.ts +8 -0
- package/esm/typings/src/book-components/icons/SendIcon.d.ts +3 -0
- package/esm/typings/src/cli/cli-commands/_boilerplate.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/about.d.ts +3 -1
- package/esm/typings/src/cli/cli-commands/hello.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/list-models.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/list-scrapers.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/login.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/make.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/run.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/{start-server.d.ts → start-agents-server.d.ts} +3 -2
- package/esm/typings/src/cli/cli-commands/start-pipelines-server.d.ts +15 -0
- package/esm/typings/src/cli/cli-commands/test-command.d.ts +2 -1
- package/esm/typings/src/cli/common/$addGlobalOptionsToCommand.d.ts +2 -1
- package/esm/typings/src/collection/agent-collection/AgentCollection.d.ts +12 -0
- package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentCollectionInSupabase.d.ts +75 -0
- package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentCollectionInSupabaseOptions.d.ts +10 -0
- package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentsDatabaseSchema.d.ts +154 -0
- package/esm/typings/src/collection/{PipelineCollection.d.ts → pipeline-collection/PipelineCollection.d.ts} +7 -3
- package/esm/typings/src/collection/{SimplePipelineCollection.d.ts → pipeline-collection/SimplePipelineCollection.d.ts} +5 -5
- package/esm/typings/src/collection/{constructors/createCollectionFromDirectory.d.ts → pipeline-collection/constructors/createPipelineCollectionFromDirectory.d.ts} +8 -11
- package/esm/typings/src/collection/pipeline-collection/constructors/createPipelineCollectionFromJson.d.ts +13 -0
- package/esm/typings/src/collection/{constructors/createCollectionFromPromise.d.ts → pipeline-collection/constructors/createPipelineCollectionFromPromise.d.ts} +6 -5
- package/esm/typings/src/collection/pipeline-collection/constructors/createPipelineCollectionFromPromise.test.d.ts +1 -0
- package/esm/typings/src/collection/{constructors/createCollectionFromUrl.d.ts → pipeline-collection/constructors/createPipelineCollectionFromUrl.d.ts} +3 -3
- package/esm/typings/src/collection/{constructors/createSubcollection.d.ts → pipeline-collection/constructors/createPipelineSubcollection.d.ts} +3 -3
- package/esm/typings/src/collection/pipeline-collection/pipelineCollectionToJson.d.ts +13 -0
- package/esm/typings/src/commands/_common/types/CommandParser.d.ts +4 -5
- package/esm/typings/src/{book-2.0/commitments → commitments}/ACTION/ACTION.d.ts +5 -1
- package/esm/typings/src/commitments/CLOSED/CLOSED.d.ts +39 -0
- package/esm/typings/src/commitments/CLOSED/CLOSED.test.d.ts +4 -0
- package/esm/typings/src/commitments/COMPONENT/COMPONENT.d.ts +28 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/DELETE/DELETE.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/FORMAT/FORMAT.d.ts +5 -1
- package/esm/typings/src/commitments/FROM/FROM.d.ts +34 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/GOAL/GOAL.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/KNOWLEDGE/KNOWLEDGE.d.ts +5 -5
- package/esm/typings/src/commitments/LANGUAGE/LANGUAGE.d.ts +35 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/MEMORY/MEMORY.d.ts +5 -1
- package/esm/typings/src/commitments/MESSAGE/AgentMessageCommitmentDefinition.d.ts +32 -0
- package/esm/typings/src/commitments/MESSAGE/InitialMessageCommitmentDefinition.d.ts +32 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/MESSAGE/MESSAGE.d.ts +5 -1
- package/esm/typings/src/commitments/MESSAGE/UserMessageCommitmentDefinition.d.ts +32 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/META/META.d.ts +5 -1
- package/esm/typings/src/commitments/META_COLOR/META_COLOR.d.ts +48 -0
- package/esm/typings/src/commitments/META_FONT/META_FONT.d.ts +42 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/META_IMAGE/META_IMAGE.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/META_LINK/META_LINK.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/MODEL/MODEL.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/NOTE/NOTE.d.ts +5 -1
- package/esm/typings/src/commitments/OPEN/OPEN.d.ts +35 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/PERSONA/PERSONA.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/RULE/RULE.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/SAMPLE/SAMPLE.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/SCENARIO/SCENARIO.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/STYLE/STYLE.d.ts +5 -1
- package/esm/typings/src/commitments/USE/USE.d.ts +53 -0
- package/esm/typings/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +42 -0
- package/esm/typings/src/commitments/USE_BROWSER/USE_BROWSER.test.d.ts +1 -0
- package/esm/typings/src/commitments/USE_MCP/USE_MCP.d.ts +37 -0
- package/esm/typings/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.d.ts +38 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/_base/BaseCommitmentDefinition.d.ts +14 -2
- package/esm/typings/src/{book-2.0/commitments → commitments}/_base/CommitmentDefinition.d.ts +6 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/_base/NotYetImplementedCommitmentDefinition.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/_base/createEmptyAgentModelRequirements.d.ts +1 -1
- package/esm/typings/src/commitments/index.d.ts +93 -0
- package/esm/typings/src/config.d.ts +24 -3
- package/esm/typings/src/conversion/validation/validatePipeline.d.ts +2 -0
- package/esm/typings/src/errors/0-index.d.ts +6 -0
- package/esm/typings/src/errors/DatabaseError.d.ts +12 -0
- package/esm/typings/src/errors/NotAllowed.d.ts +9 -0
- package/esm/typings/src/errors/WrappedError.d.ts +2 -2
- package/esm/typings/src/execution/AvailableModel.d.ts +1 -0
- package/esm/typings/src/execution/Executables.d.ts +3 -0
- package/esm/typings/src/execution/ExecutionTask.d.ts +12 -3
- package/esm/typings/src/execution/ExecutionTools.d.ts +5 -0
- package/esm/typings/src/execution/FilesystemTools.d.ts +1 -1
- package/esm/typings/src/execution/LlmExecutionTools.d.ts +26 -2
- package/esm/typings/src/execution/PromptResult.d.ts +7 -1
- package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +5 -0
- package/esm/typings/src/execution/createPipelineExecutor/20-executeTask.d.ts +5 -0
- package/esm/typings/src/execution/createPipelineExecutor/30-executeFormatSubvalues.d.ts +5 -0
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +5 -0
- package/esm/typings/src/execution/utils/usage-constants.d.ts +4 -124
- package/esm/typings/src/execution/utils/validatePromptResult.d.ts +2 -0
- package/esm/typings/src/high-level-abstractions/_common/HighLevelAbstraction.d.ts +2 -1
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForWizardOrCli.d.ts +2 -2
- package/esm/typings/src/llm-providers/_common/register/$registeredLlmToolsMessage.d.ts +2 -1
- package/esm/typings/src/llm-providers/_common/register/LlmToolsMetadata.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/utils/assertUniqueModels.d.ts +12 -0
- package/esm/typings/src/llm-providers/_multiple/getSingleLlmExecutionTools.d.ts +1 -0
- package/esm/typings/src/llm-providers/_multiple/joinLlmExecutionTools.d.ts +1 -0
- package/esm/typings/src/llm-providers/agent/Agent.d.ts +72 -0
- package/esm/typings/src/llm-providers/agent/AgentLlmExecutionTools.d.ts +26 -4
- package/esm/typings/src/llm-providers/agent/AgentOptions.d.ts +19 -0
- package/esm/typings/src/llm-providers/agent/CreateAgentLlmExecutionToolsOptions.d.ts +17 -0
- package/esm/typings/src/llm-providers/agent/RemoteAgent.d.ts +50 -0
- package/esm/typings/src/llm-providers/agent/RemoteAgentOptions.d.ts +11 -0
- package/esm/typings/src/llm-providers/agent/createAgentLlmExecutionTools.d.ts +1 -19
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/google/google-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/ollama/OllamaExecutionTools.d.ts +4 -0
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +60 -2
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionToolsOptions.d.ts +7 -1
- package/esm/typings/src/llm-providers/openai/OpenAiCompatibleExecutionTools.d.ts +13 -1
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +4 -0
- package/esm/typings/src/llm-providers/openai/createOpenAiCompatibleExecutionTools.d.ts +6 -6
- package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/openai-models.test.d.ts +4 -0
- package/esm/typings/src/other/templates/getTemplatesPipelineCollection.d.ts +1 -1
- package/esm/typings/src/pipeline/validatePipelineString.d.ts +2 -0
- package/esm/typings/src/playground/permanent/_boilerplate.d.ts +5 -0
- package/esm/typings/src/playground/permanent/agent-with-browser-playground.d.ts +5 -0
- package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +1 -0
- package/esm/typings/src/remote-server/startAgentServer.d.ts +26 -0
- package/esm/typings/src/remote-server/startRemoteServer.d.ts +4 -1
- package/esm/typings/src/remote-server/types/RemoteServerOptions.d.ts +3 -8
- package/esm/typings/src/scrapers/_boilerplate/createBoilerplateScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/_boilerplate/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/document/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/markitdown/createMarkitdownScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/markitdown/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/website/register-metadata.d.ts +1 -9
- package/esm/typings/src/storage/_common/PromptbookStorage.d.ts +1 -0
- package/esm/typings/src/storage/env-storage/$EnvStorage.d.ts +2 -1
- package/esm/typings/src/transpilers/_common/BookTranspiler.d.ts +33 -0
- package/esm/typings/src/transpilers/_common/BookTranspilerOptions.d.ts +18 -0
- package/esm/typings/src/transpilers/_common/register/$bookTranspilersRegister.d.ts +15 -0
- package/esm/typings/src/transpilers/formatted-book-in-markdown/FormattedBookInMarkdownTranspiler.d.ts +16 -0
- package/esm/typings/src/transpilers/formatted-book-in-markdown/register.d.ts +15 -0
- package/esm/typings/src/transpilers/openai-sdk/OpenAiSdkTranspiler.d.ts +16 -0
- package/esm/typings/src/transpilers/openai-sdk/OpenAiSdkTranspiler.test.d.ts +1 -0
- package/esm/typings/src/transpilers/openai-sdk/playground/playground.d.ts +5 -0
- package/esm/typings/src/transpilers/openai-sdk/register.d.ts +15 -0
- package/esm/typings/src/types/LlmCall.d.ts +20 -0
- package/esm/typings/src/types/ModelRequirements.d.ts +13 -1
- package/esm/typings/src/types/ModelVariant.d.ts +1 -1
- package/esm/typings/src/types/Prompt.d.ts +13 -1
- package/esm/typings/src/types/Updatable.d.ts +19 -0
- package/esm/typings/src/types/typeAliases.d.ts +38 -2
- package/esm/typings/src/utils/color/$randomColor.d.ts +1 -0
- package/esm/typings/src/utils/color/Color.d.ts +16 -1
- package/esm/typings/src/utils/color/Color.test.d.ts +1 -0
- package/esm/typings/src/utils/color/css-colors.d.ts +1 -0
- package/esm/typings/src/utils/color/internal-utils/checkChannelValue.d.ts +0 -3
- package/esm/typings/src/utils/color/operators/darken.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/grayscale.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/lighten.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/mixWithColor.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/saturate.d.ts +1 -1
- package/esm/typings/src/utils/environment/$detectRuntimeEnvironment.d.ts +16 -0
- package/esm/typings/src/utils/environment/$getGlobalScope.d.ts +2 -2
- package/esm/typings/src/utils/execCommand/$execCommand.d.ts +2 -1
- package/esm/typings/src/utils/execCommand/$execCommands.d.ts +2 -1
- package/esm/typings/src/utils/files/$induceBookDownload.d.ts +13 -0
- package/esm/typings/src/utils/files/$induceFileDownload.d.ts +13 -0
- package/esm/typings/src/utils/files/ObjectUrl.d.ts +46 -0
- package/esm/typings/src/utils/files/listAllFiles.d.ts +2 -3
- package/esm/typings/src/utils/misc/aboutPromptbookInformation.d.ts +27 -0
- package/esm/typings/src/utils/misc/computeHash.d.ts +11 -0
- package/esm/typings/src/utils/misc/computeHash.test.d.ts +1 -0
- package/esm/typings/src/utils/misc/injectCssModuleIntoShadowRoot.d.ts +1 -0
- package/esm/typings/src/utils/misc/xAboutPromptbookInformation.d.ts +13 -0
- package/esm/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +2 -0
- package/esm/typings/src/utils/normalization/normalizeMessageText.d.ts +9 -0
- package/esm/typings/src/utils/normalization/normalizeMessageText.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +3 -0
- package/esm/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +2 -0
- package/esm/typings/src/utils/normalization/titleToName.d.ts +2 -0
- package/esm/typings/src/utils/organization/$sideEffect.d.ts +2 -2
- package/esm/typings/src/utils/organization/$side_effect.d.ts +7 -0
- package/esm/typings/src/utils/organization/TODO_USE.d.ts +2 -2
- package/esm/typings/src/utils/organization/keepUnused.d.ts +2 -2
- package/esm/typings/src/utils/organization/preserve.d.ts +3 -3
- package/esm/typings/src/utils/organization/really_any.d.ts +7 -0
- package/esm/typings/src/utils/random/$generateBookBoilerplate.d.ts +31 -0
- package/esm/typings/src/utils/random/$randomAgentPersona.d.ts +9 -0
- package/esm/typings/src/utils/random/$randomFullnameWithColor.d.ts +13 -0
- package/esm/typings/src/utils/random/$randomItem.d.ts +9 -0
- package/esm/typings/src/utils/random/$randomSeed.d.ts +3 -0
- package/esm/typings/src/utils/random/$randomToken.d.ts +2 -0
- package/esm/typings/src/utils/random/CzechNamePool.d.ts +7 -0
- package/esm/typings/src/utils/random/EnglishNamePool.d.ts +7 -0
- package/esm/typings/src/utils/random/NamePool.d.ts +17 -0
- package/esm/typings/src/utils/random/getNamePool.d.ts +10 -0
- package/esm/typings/src/utils/serialization/$deepFreeze.d.ts +2 -1
- package/esm/typings/src/utils/serialization/asSerializable.d.ts +2 -2
- package/esm/typings/src/utils/serialization/serializeToPromptbookJavascript.d.ts +2 -2
- package/esm/typings/src/utils/validators/parameterName/validateParameterName.d.ts +2 -0
- package/esm/typings/src/version.d.ts +1 -1
- package/esm/typings/src/wizard/$getCompiledBook.d.ts +1 -2
- package/package.json +5 -4
- package/umd/index.umd.js +209 -125
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/book-2.0/commitments/index.d.ts +0 -60
- package/esm/typings/src/book-components/BookEditor/BookEditorInner.d.ts +0 -5
- package/esm/typings/src/book-components/BookEditor/BookEditorWrapper.d.ts +0 -9
- package/esm/typings/src/book-components/BookEditor/config.d.ts +0 -10
- package/esm/typings/src/book-components/Chat/utils/renderMarkdown.d.ts +0 -21
- package/esm/typings/src/collection/collectionToJson.d.ts +0 -13
- package/esm/typings/src/collection/constructors/createCollectionFromJson.d.ts +0 -13
- /package/esm/typings/src/{book-components/Chat/utils/renderMarkdown.test.d.ts → book-2.0/agent-source/computeAgentHash.test.d.ts} +0 -0
- /package/esm/typings/src/{collection/constructors/createCollectionFromDirectory.test.d.ts → book-2.0/agent-source/normalizeAgentName.test.d.ts} +0 -0
- /package/esm/typings/src/{collection/constructors/createCollectionFromJson.test.d.ts → book-components/Chat/AgentChat/AgentChat.test.d.ts} +0 -0
- /package/esm/typings/src/collection/{constructors/createCollectionFromPromise.test.d.ts → pipeline-collection/constructors/createPipelineCollectionFromDirectory.test.d.ts} +0 -0
- /package/esm/typings/src/{commands/_common/parseCommand.test.d.ts → collection/pipeline-collection/constructors/createPipelineCollectionFromJson.test.d.ts} +0 -0
- /package/esm/typings/src/collection/{collectionToJson.test.d.ts → pipeline-collection/pipelineCollectionToJson.test.d.ts} +0 -0
- /package/esm/typings/src/{book-2.0/commitments → commitments}/_base/BookCommitment.d.ts +0 -0
- /package/esm/typings/src/{book-2.0/commitments → commitments}/_base/ParsedCommitment.d.ts +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Promisable } from 'type-fest';
|
|
2
2
|
import type { Identification } from '../../../remote-server/socket-types/_subtypes/Identification';
|
|
3
3
|
import type { string_app_id, string_url } from '../../../types/typeAliases';
|
|
4
|
-
import type {
|
|
4
|
+
import type { chococake } from '../../../utils/organization/really_any';
|
|
5
5
|
import type { CacheLlmToolsOptions } from '../utils/cache/CacheLlmToolsOptions';
|
|
6
6
|
import type { LlmExecutionToolsWithTotalUsage } from '../utils/count-total-usage/LlmExecutionToolsWithTotalUsage';
|
|
7
7
|
type ProvideLlmToolsForWizardOrCliOptions = {
|
|
@@ -38,7 +38,7 @@ type ProvideLlmToolsForWizardOrCliOptions = {
|
|
|
38
38
|
*
|
|
39
39
|
* Note: When login prompt fails, `process.exit(1)` is called
|
|
40
40
|
*/
|
|
41
|
-
loginPrompt(): Promisable<Identification<
|
|
41
|
+
loginPrompt(): Promisable<Identification<chococake>>;
|
|
42
42
|
});
|
|
43
43
|
/**
|
|
44
44
|
* Returns LLM tools for CLI
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { string_filename, string_markdown } from '../../../types/typeAliases';
|
|
2
|
+
import type { $side_effect } from '../../../utils/organization/$side_effect';
|
|
2
3
|
/**
|
|
3
4
|
* Pass the `.env` file which was used to configure LLM tools
|
|
4
5
|
*
|
|
@@ -6,7 +7,7 @@ import type { string_filename, string_markdown } from '../../../types/typeAliase
|
|
|
6
7
|
*
|
|
7
8
|
* @private internal log of `$provideLlmToolsConfigurationFromEnv` and `$registeredLlmToolsMessage`
|
|
8
9
|
*/
|
|
9
|
-
export declare function $setUsedEnvFilename(filepath: string_filename):
|
|
10
|
+
export declare function $setUsedEnvFilename(filepath: string_filename): $side_effect;
|
|
10
11
|
/**
|
|
11
12
|
* Creates a message with all registered LLM tools
|
|
12
13
|
*
|
|
@@ -26,7 +26,7 @@ export type LlmToolsMetadata = Registered & {
|
|
|
26
26
|
/**
|
|
27
27
|
* How is the model provider important and should be sorted in the list of available providers?
|
|
28
28
|
*/
|
|
29
|
-
readonly order: typeof MODEL_ORDERS[keyof typeof MODEL_ORDERS] | number;
|
|
29
|
+
readonly order: (typeof MODEL_ORDERS)[keyof typeof MODEL_ORDERS] | number;
|
|
30
30
|
/**
|
|
31
31
|
* List of environment variables that can be used to configure the provider
|
|
32
32
|
*
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AvailableModel } from '../../../execution/AvailableModel';
|
|
2
|
+
/**
|
|
3
|
+
* Utility to assert that all models in the provided array have unique `modelName` values.
|
|
4
|
+
*
|
|
5
|
+
* This is internal utility for unit tests to ensure no duplicate model names exist.
|
|
6
|
+
*
|
|
7
|
+
* @private internal utility of unit tests
|
|
8
|
+
*/
|
|
9
|
+
export declare function assertUniqueModels(models: ReadonlyArray<AvailableModel>): void;
|
|
10
|
+
/**
|
|
11
|
+
* Note: [⚪] This should never be in any released package
|
|
12
|
+
*/
|
|
@@ -7,5 +7,6 @@ import { MultipleLlmExecutionTools } from './MultipleLlmExecutionTools';
|
|
|
7
7
|
*/
|
|
8
8
|
export declare function getSingleLlmExecutionTools(oneOrMoreLlmExecutionTools: undefined | LlmExecutionTools | ReadonlyArray<LlmExecutionTools>): LlmExecutionTools | MultipleLlmExecutionTools;
|
|
9
9
|
/**
|
|
10
|
+
* TODO: [🙆] `getSingleLlmExecutionTools` vs `joinLlmExecutionTools` - explain difference or pick one
|
|
10
11
|
* TODO: [👷♂️] @@@ Manual about construction of llmTools
|
|
11
12
|
*/
|
|
@@ -18,5 +18,6 @@ import { MultipleLlmExecutionTools } from './MultipleLlmExecutionTools';
|
|
|
18
18
|
*/
|
|
19
19
|
export declare function joinLlmExecutionTools(title: string_title & string_markdown_text, ...llmExecutionTools: ReadonlyArray<LlmExecutionTools>): MultipleLlmExecutionTools;
|
|
20
20
|
/**
|
|
21
|
+
* TODO: [🙆] `getSingleLlmExecutionTools` vs `joinLlmExecutionTools` - explain difference or pick one
|
|
21
22
|
* TODO: [👷♂️] @@@ Manual about construction of llmTools
|
|
22
23
|
*/
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { BehaviorSubject } from 'rxjs';
|
|
2
|
+
import type { AgentBasicInformation, BookParameter } from '../../book-2.0/agent-source/AgentBasicInformation';
|
|
3
|
+
import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
4
|
+
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
5
|
+
import type { ChatPromptResult } from '../../execution/PromptResult';
|
|
6
|
+
import type { Prompt } from '../../types/Prompt';
|
|
7
|
+
import type { string_agent_hash, string_agent_name, string_agent_url, string_color, string_fonts, string_url_image } from '../../types/typeAliases';
|
|
8
|
+
import { AgentLlmExecutionTools } from './AgentLlmExecutionTools';
|
|
9
|
+
import type { AgentOptions } from './AgentOptions';
|
|
10
|
+
/**
|
|
11
|
+
* Represents one AI Agent
|
|
12
|
+
*
|
|
13
|
+
* Note: [🦖] There are several different things in Promptbook:
|
|
14
|
+
* - `Agent` - which represents an AI Agent with its source, memories, actions, etc. Agent is a higher-level abstraction which is internally using:
|
|
15
|
+
* - `LlmExecutionTools` - which wraps one or more LLM models and provides an interface to execute them
|
|
16
|
+
* - `AgentLlmExecutionTools` - which is a specific implementation of `LlmExecutionTools` that wraps another LlmExecutionTools and applies agent-specific system prompts and requirements
|
|
17
|
+
* - `OpenAiAssistantExecutionTools` - which is a specific implementation of `LlmExecutionTools` for OpenAI models with assistant capabilities, recommended for usage in `Agent` or `AgentLlmExecutionTools`
|
|
18
|
+
* - `RemoteAgent` - which is an `Agent` that connects to a Promptbook Agents Server
|
|
19
|
+
*
|
|
20
|
+
* @public exported from `@promptbook/core`
|
|
21
|
+
*/
|
|
22
|
+
export declare class Agent extends AgentLlmExecutionTools implements LlmExecutionTools, AgentBasicInformation {
|
|
23
|
+
private _agentName;
|
|
24
|
+
/**
|
|
25
|
+
* Name of the agent
|
|
26
|
+
*/
|
|
27
|
+
get agentName(): string_agent_name;
|
|
28
|
+
/**
|
|
29
|
+
* Description of the agent
|
|
30
|
+
*/
|
|
31
|
+
personaDescription: string | null;
|
|
32
|
+
/**
|
|
33
|
+
* The initial message shown to the user when the chat starts
|
|
34
|
+
*/
|
|
35
|
+
initialMessage: string | null;
|
|
36
|
+
/**
|
|
37
|
+
* Links found in the agent source
|
|
38
|
+
*/
|
|
39
|
+
links: Array<string_agent_url>;
|
|
40
|
+
/**
|
|
41
|
+
* Computed hash of the agent source for integrity verification
|
|
42
|
+
*/
|
|
43
|
+
get agentHash(): string_agent_hash;
|
|
44
|
+
/**
|
|
45
|
+
* Metadata like image or color
|
|
46
|
+
*/
|
|
47
|
+
meta: {
|
|
48
|
+
fullname?: string;
|
|
49
|
+
image?: string_url_image;
|
|
50
|
+
link?: string;
|
|
51
|
+
font?: string_fonts;
|
|
52
|
+
color?: string_color;
|
|
53
|
+
title?: string;
|
|
54
|
+
description?: string;
|
|
55
|
+
[key: string]: string | undefined;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Not used in Agent, always returns empty array
|
|
59
|
+
*/
|
|
60
|
+
get parameters(): BookParameter[];
|
|
61
|
+
readonly agentSource: BehaviorSubject<string_book>;
|
|
62
|
+
constructor(options: AgentOptions);
|
|
63
|
+
/**
|
|
64
|
+
* Calls the chat model with agent-specific system prompt and requirements with streaming
|
|
65
|
+
*
|
|
66
|
+
* Note: This method also implements the learning mechanism
|
|
67
|
+
*/
|
|
68
|
+
callChatModelStream(prompt: Prompt, onProgress: (chunk: ChatPromptResult) => void): Promise<ChatPromptResult>;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* TODO: [🧠][😰]Agent is not working with the parameters, should it be?
|
|
72
|
+
*/
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Promisable } from 'type-fest';
|
|
2
|
+
import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
|
|
2
3
|
import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
3
4
|
import type { ChatParticipant } from '../../book-components/Chat/types/ChatParticipant';
|
|
4
5
|
import type { AvailableModel } from '../../execution/AvailableModel';
|
|
@@ -6,15 +7,26 @@ import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
|
6
7
|
import type { ChatPromptResult } from '../../execution/PromptResult';
|
|
7
8
|
import type { Prompt } from '../../types/Prompt';
|
|
8
9
|
import type { string_markdown, string_markdown_text, string_model_name, string_title } from '../../types/typeAliases';
|
|
10
|
+
import type { CreateAgentLlmExecutionToolsOptions } from './CreateAgentLlmExecutionToolsOptions';
|
|
9
11
|
/**
|
|
10
12
|
* Execution Tools for calling LLM models with a predefined agent "soul"
|
|
11
13
|
* This wraps underlying LLM execution tools and applies agent-specific system prompts and requirements
|
|
12
14
|
*
|
|
15
|
+
* Note: [🦖] There are several different things in Promptbook:
|
|
16
|
+
* - `Agent` - which represents an AI Agent with its source, memories, actions, etc. Agent is a higher-level abstraction which is internally using:
|
|
17
|
+
* - `LlmExecutionTools` - which wraps one or more LLM models and provides an interface to execute them
|
|
18
|
+
* - `AgentLlmExecutionTools` - which is a specific implementation of `LlmExecutionTools` that wraps another LlmExecutionTools and applies agent-specific system prompts and requirements
|
|
19
|
+
* - `OpenAiAssistantExecutionTools` - which is a specific implementation of `LlmExecutionTools` for OpenAI models with assistant capabilities, recommended for usage in `Agent` or `AgentLlmExecutionTools`
|
|
20
|
+
* - `RemoteAgent` - which is an `Agent` that connects to a Promptbook Agents Server
|
|
21
|
+
*
|
|
13
22
|
* @public exported from `@promptbook/core`
|
|
14
23
|
*/
|
|
15
24
|
export declare class AgentLlmExecutionTools implements LlmExecutionTools {
|
|
16
|
-
private readonly
|
|
17
|
-
|
|
25
|
+
private readonly options;
|
|
26
|
+
/**
|
|
27
|
+
* Cache of OpenAI assistants to avoid creating duplicates
|
|
28
|
+
*/
|
|
29
|
+
private static assistantCache;
|
|
18
30
|
/**
|
|
19
31
|
* Cached model requirements to avoid re-parsing the agent source
|
|
20
32
|
*/
|
|
@@ -29,7 +41,13 @@ export declare class AgentLlmExecutionTools implements LlmExecutionTools {
|
|
|
29
41
|
* @param llmTools The underlying LLM execution tools to wrap
|
|
30
42
|
* @param agentSource The agent source string that defines the agent's behavior
|
|
31
43
|
*/
|
|
32
|
-
constructor(
|
|
44
|
+
constructor(options: CreateAgentLlmExecutionToolsOptions);
|
|
45
|
+
/**
|
|
46
|
+
* Updates the agent source and clears the cache
|
|
47
|
+
*
|
|
48
|
+
* @param agentSource The new agent source string
|
|
49
|
+
*/
|
|
50
|
+
protected updateAgentSource(agentSource: string_book): void;
|
|
33
51
|
/**
|
|
34
52
|
* Get cached or parse agent information
|
|
35
53
|
*/
|
|
@@ -37,7 +55,7 @@ export declare class AgentLlmExecutionTools implements LlmExecutionTools {
|
|
|
37
55
|
/**
|
|
38
56
|
* Get cached or create agent model requirements
|
|
39
57
|
*/
|
|
40
|
-
|
|
58
|
+
protected getAgentModelRequirements(): Promise<AgentModelRequirements>;
|
|
41
59
|
get title(): string_title & string_markdown_text;
|
|
42
60
|
get description(): string_markdown;
|
|
43
61
|
get profile(): ChatParticipant | undefined;
|
|
@@ -51,6 +69,10 @@ export declare class AgentLlmExecutionTools implements LlmExecutionTools {
|
|
|
51
69
|
* Calls the chat model with agent-specific system prompt and requirements
|
|
52
70
|
*/
|
|
53
71
|
callChatModel(prompt: Prompt): Promise<ChatPromptResult>;
|
|
72
|
+
/**
|
|
73
|
+
* Calls the chat model with agent-specific system prompt and requirements with streaming
|
|
74
|
+
*/
|
|
75
|
+
callChatModelStream(prompt: Prompt, onProgress: (chunk: ChatPromptResult) => void): Promise<ChatPromptResult>;
|
|
54
76
|
}
|
|
55
77
|
/**
|
|
56
78
|
* TODO: [🍚] Implement Destroyable pattern to free resources
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
2
|
+
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
|
3
|
+
import type { ExecutionTools } from '../../execution/ExecutionTools';
|
|
4
|
+
import type { Updatable } from '../../types/Updatable';
|
|
5
|
+
/**
|
|
6
|
+
* Options for creating an Agent
|
|
7
|
+
*/
|
|
8
|
+
export type AgentOptions = CommonToolsOptions & {
|
|
9
|
+
/**
|
|
10
|
+
* The execution tools available to the agent
|
|
11
|
+
*
|
|
12
|
+
* Here the agent has access to various LLM models, browser, scrapers, LibreOffice, tools, etc.
|
|
13
|
+
*/
|
|
14
|
+
executionTools: ExecutionTools;
|
|
15
|
+
/**
|
|
16
|
+
* The source of the agent
|
|
17
|
+
*/
|
|
18
|
+
agentSource: Updatable<string_book>;
|
|
19
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
2
|
+
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
|
3
|
+
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
4
|
+
import { OpenAiAssistantExecutionTools } from '../openai/OpenAiAssistantExecutionTools';
|
|
5
|
+
/**
|
|
6
|
+
* Options for creating AgentLlmExecutionTools
|
|
7
|
+
*/
|
|
8
|
+
export type CreateAgentLlmExecutionToolsOptions = CommonToolsOptions & {
|
|
9
|
+
/**
|
|
10
|
+
* The underlying LLM execution tools to wrap
|
|
11
|
+
*/
|
|
12
|
+
llmTools: LlmExecutionTools | OpenAiAssistantExecutionTools;
|
|
13
|
+
/**
|
|
14
|
+
* The agent source string that defines the agent's behavior
|
|
15
|
+
*/
|
|
16
|
+
agentSource: string_book;
|
|
17
|
+
};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { ChatPromptResult } from '../../execution/PromptResult';
|
|
2
|
+
import type { Prompt } from '../../types/Prompt';
|
|
3
|
+
import type { string_agent_hash, string_agent_name } from '../../types/typeAliases';
|
|
4
|
+
import { Agent } from './Agent';
|
|
5
|
+
import type { RemoteAgentOptions } from './RemoteAgentOptions';
|
|
6
|
+
/**
|
|
7
|
+
* Represents one AI Agent
|
|
8
|
+
*
|
|
9
|
+
* Note: [🦖] There are several different things in Promptbook:
|
|
10
|
+
* - `Agent` - which represents an AI Agent with its source, memories, actions, etc. Agent is a higher-level abstraction which is internally using:
|
|
11
|
+
* - `LlmExecutionTools` - which wraps one or more LLM models and provides an interface to execute them
|
|
12
|
+
* - `AgentLlmExecutionTools` - which is a specific implementation of `LlmExecutionTools` that wraps another LlmExecutionTools and applies agent-specific system prompts and requirements
|
|
13
|
+
* - `OpenAiAssistantExecutionTools` - which is a specific implementation of `LlmExecutionTools` for OpenAI models with assistant capabilities, recommended for usage in `Agent` or `AgentLlmExecutionTools`
|
|
14
|
+
* - `RemoteAgent` - which is an `Agent` that connects to a Promptbook Agents Server
|
|
15
|
+
*
|
|
16
|
+
* @public exported from `@promptbook/core`
|
|
17
|
+
*/
|
|
18
|
+
export declare class RemoteAgent extends Agent {
|
|
19
|
+
static connect(options: RemoteAgentOptions): Promise<RemoteAgent>;
|
|
20
|
+
/**
|
|
21
|
+
* The source of the agent
|
|
22
|
+
*/
|
|
23
|
+
private agentUrl;
|
|
24
|
+
private _remoteAgentName;
|
|
25
|
+
private _remoteAgentHash;
|
|
26
|
+
private _isVoiceCallingEnabled;
|
|
27
|
+
private constructor();
|
|
28
|
+
get agentName(): string_agent_name;
|
|
29
|
+
get agentHash(): string_agent_hash;
|
|
30
|
+
/**
|
|
31
|
+
* Calls the agent on agents remote server
|
|
32
|
+
*/
|
|
33
|
+
callChatModel(prompt: Prompt): Promise<ChatPromptResult>;
|
|
34
|
+
/**
|
|
35
|
+
* Calls the agent on agents remote server with voice
|
|
36
|
+
* [✨✷] Only available when voice calling is enabled on the server
|
|
37
|
+
* Returns undefined if voice calling is disabled
|
|
38
|
+
*/
|
|
39
|
+
get callVoiceChatModel(): ((audio: Blob, prompt: Prompt) => Promise<{
|
|
40
|
+
text: string;
|
|
41
|
+
audio: Blob;
|
|
42
|
+
userMessage?: string;
|
|
43
|
+
agentMessage?: string;
|
|
44
|
+
}>) | undefined;
|
|
45
|
+
callChatModelStream(prompt: Prompt, onProgress: (chunk: ChatPromptResult) => void): Promise<ChatPromptResult>;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* TODO: [🧠][😰]Agent is not working with the parameters, should it be?
|
|
49
|
+
* TODO: !!! Agent on remote server
|
|
50
|
+
*/
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
|
2
|
+
import type { string_agent_url } from '../../types/typeAliases';
|
|
3
|
+
/**
|
|
4
|
+
* Options for creating a Remote Agent
|
|
5
|
+
*/
|
|
6
|
+
export type RemoteAgentOptions = CommonToolsOptions & {
|
|
7
|
+
/**
|
|
8
|
+
* Url of the remote agent
|
|
9
|
+
*/
|
|
10
|
+
agentUrl: string_agent_url;
|
|
11
|
+
};
|
|
@@ -1,19 +1,5 @@
|
|
|
1
|
-
import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
2
|
-
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
3
1
|
import { AgentLlmExecutionTools } from './AgentLlmExecutionTools';
|
|
4
|
-
|
|
5
|
-
* Options for creating AgentLlmExecutionTools
|
|
6
|
-
*/
|
|
7
|
-
export type CreateAgentLlmExecutionToolsOptions = {
|
|
8
|
-
/**
|
|
9
|
-
* The underlying LLM execution tools to wrap
|
|
10
|
-
*/
|
|
11
|
-
llmTools: LlmExecutionTools;
|
|
12
|
-
/**
|
|
13
|
-
* The agent source string that defines the agent's behavior
|
|
14
|
-
*/
|
|
15
|
-
agentSource: string_book;
|
|
16
|
-
};
|
|
2
|
+
import type { CreateAgentLlmExecutionToolsOptions } from './CreateAgentLlmExecutionToolsOptions';
|
|
17
3
|
/**
|
|
18
4
|
* Creates new AgentLlmExecutionTools that wrap underlying LLM tools with agent-specific behavior
|
|
19
5
|
*
|
|
@@ -23,7 +9,3 @@ export declare const createAgentLlmExecutionTools: ((options: CreateAgentLlmExec
|
|
|
23
9
|
packageName: string;
|
|
24
10
|
className: string;
|
|
25
11
|
};
|
|
26
|
-
/**
|
|
27
|
-
* TODO: [🧠] Consider adding validation for agent source format
|
|
28
|
-
* TODO: [🧠] Consider adding options for caching behavior
|
|
29
|
-
*/
|
|
@@ -3,7 +3,7 @@ import type { number_usd } from '../../types/typeAliases';
|
|
|
3
3
|
/**
|
|
4
4
|
* List of available Anthropic Claude models with pricing
|
|
5
5
|
*
|
|
6
|
-
* Note: Synced with official API docs at 2025-
|
|
6
|
+
* Note: Synced with official API docs at 2025-11-19
|
|
7
7
|
*
|
|
8
8
|
* @see https://docs.anthropic.com/en/docs/models-overview
|
|
9
9
|
* @public exported from `@promptbook/anthropic-claude`
|
|
@@ -3,7 +3,7 @@ import type { number_usd } from '../../types/typeAliases';
|
|
|
3
3
|
/**
|
|
4
4
|
* List of available Google models with descriptions
|
|
5
5
|
*
|
|
6
|
-
* Note: Synced with official API docs at 2025-
|
|
6
|
+
* Note: Synced with official API docs at 2025-11-19
|
|
7
7
|
*
|
|
8
8
|
* @see https://ai.google.dev/models/gemini
|
|
9
9
|
* @public exported from `@promptbook/google`
|
|
@@ -38,6 +38,10 @@ export declare class OllamaExecutionTools extends OpenAiCompatibleExecutionTools
|
|
|
38
38
|
* Default model for completion variant.
|
|
39
39
|
*/
|
|
40
40
|
protected getDefaultEmbeddingModel(): AvailableModel;
|
|
41
|
+
/**
|
|
42
|
+
* Default model for image generation variant.
|
|
43
|
+
*/
|
|
44
|
+
protected getDefaultImageGenerationModel(): AvailableModel;
|
|
41
45
|
}
|
|
42
46
|
/**
|
|
43
47
|
* TODO: [🛄] Some way how to re-wrap the errors from `OpenAiCompatibleExecutionTools`
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
2
2
|
import type { ChatPromptResult } from '../../execution/PromptResult';
|
|
3
3
|
import type { Prompt } from '../../types/Prompt';
|
|
4
|
-
import type { string_markdown, string_markdown_text, string_title } from '../../types/typeAliases';
|
|
4
|
+
import type { string_markdown, string_markdown_text, string_title, string_token } from '../../types/typeAliases';
|
|
5
5
|
import type { OpenAiAssistantExecutionToolsOptions } from './OpenAiAssistantExecutionToolsOptions';
|
|
6
6
|
import { OpenAiExecutionTools } from './OpenAiExecutionTools';
|
|
7
7
|
/**
|
|
@@ -9,10 +9,18 @@ import { OpenAiExecutionTools } from './OpenAiExecutionTools';
|
|
|
9
9
|
*
|
|
10
10
|
* This is useful for calling OpenAI API with a single assistant, for more wide usage use `OpenAiExecutionTools`.
|
|
11
11
|
*
|
|
12
|
+
* Note: [🦖] There are several different things in Promptbook:
|
|
13
|
+
* - `Agent` - which represents an AI Agent with its source, memories, actions, etc. Agent is a higher-level abstraction which is internally using:
|
|
14
|
+
* - `LlmExecutionTools` - which wraps one or more LLM models and provides an interface to execute them
|
|
15
|
+
* - `AgentLlmExecutionTools` - which is a specific implementation of `LlmExecutionTools` that wraps another LlmExecutionTools and applies agent-specific system prompts and requirements
|
|
16
|
+
* - `OpenAiAssistantExecutionTools` - which is a specific implementation of `LlmExecutionTools` for OpenAI models with assistant capabilities, recommended for usage in `Agent` or `AgentLlmExecutionTools`
|
|
17
|
+
* - `RemoteAgent` - which is an `Agent` that connects to a Promptbook Agents Server
|
|
18
|
+
*
|
|
12
19
|
* @public exported from `@promptbook/openai`
|
|
13
20
|
*/
|
|
14
21
|
export declare class OpenAiAssistantExecutionTools extends OpenAiExecutionTools implements LlmExecutionTools {
|
|
15
|
-
|
|
22
|
+
readonly assistantId: string_token;
|
|
23
|
+
private readonly isCreatingNewAssistantsAllowed;
|
|
16
24
|
/**
|
|
17
25
|
* Creates OpenAI Execution Tools.
|
|
18
26
|
*
|
|
@@ -25,6 +33,56 @@ export declare class OpenAiAssistantExecutionTools extends OpenAiExecutionTools
|
|
|
25
33
|
* Calls OpenAI API to use a chat model.
|
|
26
34
|
*/
|
|
27
35
|
callChatModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements' | 'format'>): Promise<ChatPromptResult>;
|
|
36
|
+
/**
|
|
37
|
+
* Calls OpenAI API to use a chat model with streaming.
|
|
38
|
+
*/
|
|
39
|
+
callChatModelStream(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements' | 'format'>, onProgress: (chunk: ChatPromptResult) => void): Promise<ChatPromptResult>;
|
|
40
|
+
/**
|
|
41
|
+
* Get an existing assistant tool wrapper
|
|
42
|
+
*/
|
|
43
|
+
getAssistant(assistantId: string_token): OpenAiAssistantExecutionTools;
|
|
44
|
+
createNewAssistant(options: {
|
|
45
|
+
/**
|
|
46
|
+
* Name of the new assistant
|
|
47
|
+
*/
|
|
48
|
+
readonly name: string_title;
|
|
49
|
+
/**
|
|
50
|
+
* Instructions for the new assistant
|
|
51
|
+
*/
|
|
52
|
+
readonly instructions: string_markdown;
|
|
53
|
+
/**
|
|
54
|
+
* Optional list of knowledge source links (URLs or file paths) to attach to the assistant via vector store
|
|
55
|
+
*/
|
|
56
|
+
readonly knowledgeSources?: ReadonlyArray<string>;
|
|
57
|
+
}): Promise<OpenAiAssistantExecutionTools>;
|
|
58
|
+
updateAssistant(options: {
|
|
59
|
+
/**
|
|
60
|
+
* ID of the assistant to update
|
|
61
|
+
*/
|
|
62
|
+
readonly assistantId: string_token;
|
|
63
|
+
/**
|
|
64
|
+
* Name of the assistant
|
|
65
|
+
*/
|
|
66
|
+
readonly name?: string_title;
|
|
67
|
+
/**
|
|
68
|
+
* Instructions for the assistant
|
|
69
|
+
*/
|
|
70
|
+
readonly instructions?: string_markdown;
|
|
71
|
+
/**
|
|
72
|
+
* Optional list of knowledge source links (URLs or file paths) to attach to the assistant via vector store
|
|
73
|
+
*/
|
|
74
|
+
readonly knowledgeSources?: ReadonlyArray<string>;
|
|
75
|
+
}): Promise<OpenAiAssistantExecutionTools>;
|
|
76
|
+
/**
|
|
77
|
+
* Discriminant for type guards
|
|
78
|
+
*/
|
|
79
|
+
protected get discriminant(): string;
|
|
80
|
+
/**
|
|
81
|
+
* Type guard to check if given `LlmExecutionTools` are instanceof `OpenAiAssistantExecutionTools`
|
|
82
|
+
*
|
|
83
|
+
* Note: This is useful when you can possibly have multiple versions of `@promptbook/openai` installed
|
|
84
|
+
*/
|
|
85
|
+
static isOpenAiAssistantExecutionTools(llmExecutionTools: LlmExecutionTools): llmExecutionTools is OpenAiAssistantExecutionTools;
|
|
28
86
|
}
|
|
29
87
|
/**
|
|
30
88
|
* TODO: [🧠][🧙♂️] Maybe there can be some wizard for those who want to use just OpenAI
|
|
@@ -7,8 +7,14 @@ import type { OpenAiCompatibleExecutionToolsOptions } from './OpenAiCompatibleEx
|
|
|
7
7
|
* @public exported from `@promptbook/openai`
|
|
8
8
|
*/
|
|
9
9
|
export type OpenAiAssistantExecutionToolsOptions = OpenAiCompatibleExecutionToolsOptions & ClientOptions & {
|
|
10
|
+
/**
|
|
11
|
+
* Whether creating new assistants is allowed
|
|
12
|
+
*
|
|
13
|
+
* @default false
|
|
14
|
+
*/
|
|
15
|
+
readonly isCreatingNewAssistantsAllowed?: boolean;
|
|
10
16
|
/**
|
|
11
17
|
* Which assistant to use
|
|
12
18
|
*/
|
|
13
|
-
assistantId: string_token;
|
|
19
|
+
readonly assistantId: string_token;
|
|
14
20
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
import type { AvailableModel } from '../../execution/AvailableModel';
|
|
3
3
|
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
4
|
-
import type { ChatPromptResult, CompletionPromptResult, EmbeddingPromptResult } from '../../execution/PromptResult';
|
|
4
|
+
import type { ChatPromptResult, CompletionPromptResult, EmbeddingPromptResult, ImagePromptResult } from '../../execution/PromptResult';
|
|
5
5
|
import type { Usage } from '../../execution/Usage';
|
|
6
6
|
import type { Prompt } from '../../types/Prompt';
|
|
7
7
|
import type { string_markdown, string_markdown_text, string_model_name, string_title } from '../../types/typeAliases';
|
|
@@ -63,6 +63,14 @@ export declare abstract class OpenAiCompatibleExecutionTools implements LlmExecu
|
|
|
63
63
|
* Internal method that handles parameter retry for embedding model calls
|
|
64
64
|
*/
|
|
65
65
|
private callEmbeddingModelWithRetry;
|
|
66
|
+
/**
|
|
67
|
+
* Calls OpenAI compatible API to use a image generation model
|
|
68
|
+
*/
|
|
69
|
+
callImageGenerationModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<ImagePromptResult>;
|
|
70
|
+
/**
|
|
71
|
+
* Internal method that handles parameter retry for image generation model calls
|
|
72
|
+
*/
|
|
73
|
+
private callImageGenerationModelWithRetry;
|
|
66
74
|
/**
|
|
67
75
|
* Get the model that should be used as default
|
|
68
76
|
*/
|
|
@@ -89,6 +97,10 @@ export declare abstract class OpenAiCompatibleExecutionTools implements LlmExecu
|
|
|
89
97
|
* Default model for completion variant.
|
|
90
98
|
*/
|
|
91
99
|
protected abstract getDefaultEmbeddingModel(): AvailableModel;
|
|
100
|
+
/**
|
|
101
|
+
* Default model for image generation variant.
|
|
102
|
+
*/
|
|
103
|
+
protected abstract getDefaultImageGenerationModel(): AvailableModel;
|
|
92
104
|
/**
|
|
93
105
|
* Makes a request with retry logic for network errors like ECONNRESET
|
|
94
106
|
*/
|
|
@@ -35,4 +35,8 @@ export declare class OpenAiExecutionTools extends OpenAiCompatibleExecutionTools
|
|
|
35
35
|
* Default model for completion variant.
|
|
36
36
|
*/
|
|
37
37
|
protected getDefaultEmbeddingModel(): AvailableModel;
|
|
38
|
+
/**
|
|
39
|
+
* Default model for image generation variant.
|
|
40
|
+
*/
|
|
41
|
+
protected getDefaultImageGenerationModel(): AvailableModel;
|
|
38
42
|
}
|
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
import type { AvailableModel } from '../../execution/AvailableModel';
|
|
2
2
|
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
3
3
|
import type { Usage } from '../../execution/Usage';
|
|
4
|
-
import type { string_markdown } from '../../types/typeAliases';
|
|
5
|
-
import type { string_markdown_text } from '../../types/typeAliases';
|
|
6
|
-
import type { string_model_name } from '../../types/typeAliases';
|
|
7
|
-
import type { string_title } from '../../types/typeAliases';
|
|
4
|
+
import type { string_markdown, string_markdown_text, string_model_name, string_title } from '../../types/typeAliases';
|
|
8
5
|
import { RemoteLlmExecutionTools } from '../remote/RemoteLlmExecutionTools';
|
|
9
6
|
import { computeOpenAiUsage } from './computeOpenAiUsage';
|
|
10
7
|
import { OpenAiCompatibleExecutionTools } from './OpenAiCompatibleExecutionTools';
|
|
11
|
-
import type { OpenAiCompatibleExecutionToolsNonProxiedOptions } from './OpenAiCompatibleExecutionToolsOptions';
|
|
12
|
-
import type { OpenAiCompatibleExecutionToolsOptions } from './OpenAiCompatibleExecutionToolsOptions';
|
|
8
|
+
import type { OpenAiCompatibleExecutionToolsNonProxiedOptions, OpenAiCompatibleExecutionToolsOptions } from './OpenAiCompatibleExecutionToolsOptions';
|
|
13
9
|
/**
|
|
14
10
|
* Execution Tools for calling OpenAI compatible API
|
|
15
11
|
*
|
|
@@ -67,6 +63,10 @@ export declare class HardcodedOpenAiCompatibleExecutionTools extends OpenAiCompa
|
|
|
67
63
|
* Default model for completion variant.
|
|
68
64
|
*/
|
|
69
65
|
protected getDefaultEmbeddingModel(): AvailableModel;
|
|
66
|
+
/**
|
|
67
|
+
* Default model for image generation variant.
|
|
68
|
+
*/
|
|
69
|
+
protected getDefaultImageGenerationModel(): AvailableModel;
|
|
70
70
|
}
|
|
71
71
|
/**
|
|
72
72
|
* TODO: [🦺] Is there some way how to put `packageName` and `className` on top and function definition on bottom?
|
|
@@ -2,7 +2,7 @@ import type { AvailableModel } from '../../execution/AvailableModel';
|
|
|
2
2
|
/**
|
|
3
3
|
* List of available OpenAI models with pricing
|
|
4
4
|
*
|
|
5
|
-
* Note: Synced with official API docs at 2025-
|
|
5
|
+
* Note: Synced with official API docs at 2025-11-19
|
|
6
6
|
*
|
|
7
7
|
* @see https://platform.openai.com/docs/models/
|
|
8
8
|
* @see https://openai.com/api/pricing/
|
|
@@ -3,6 +3,8 @@ import type { PipelineString } from './PipelineString';
|
|
|
3
3
|
* Function `validatePipelineString` will validate the if the string is a valid pipeline string
|
|
4
4
|
* It does not check if the string is fully logically correct, but if it is a string that can be a pipeline string or the string looks completely different.
|
|
5
5
|
*
|
|
6
|
+
* Note: [🔂] This function is idempotent.
|
|
7
|
+
*
|
|
6
8
|
* @param {string} pipelineString the candidate for a pipeline string
|
|
7
9
|
* @returns {PipelineString} the same string as input, but validated as valid
|
|
8
10
|
* @throws {ParseError} if the string is not a valid pipeline string
|
|
@@ -47,5 +47,6 @@ export type PrepareAndScrapeOptions = {
|
|
|
47
47
|
readonly isVerbose?: boolean;
|
|
48
48
|
};
|
|
49
49
|
/**
|
|
50
|
+
* TODO: [🧠] Maybe extend from `CommonToolsOptions`
|
|
50
51
|
* TODO: [🧠] Maybe split `PrepareAndScrapeOptions` and `ScrapeOptions` (`ScrapeOptions` should be extended from `PrepareAndScrapeOptions`)
|
|
51
52
|
*/
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { number_port } from '../types/typeAliases';
|
|
2
|
+
import type { TODO_any } from '../utils/organization/TODO_any';
|
|
3
|
+
type AgentsServerOptions = {
|
|
4
|
+
/**
|
|
5
|
+
* !!!
|
|
6
|
+
*
|
|
7
|
+
* @default 4440
|
|
8
|
+
*/
|
|
9
|
+
port: number_port;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* [🐱🚀]
|
|
13
|
+
* Remote server is a proxy server that uses its execution tools internally and exposes the executor interface externally.
|
|
14
|
+
*
|
|
15
|
+
* You can simply use `RemoteExecutionTools` on client-side javascript and connect to your remote server.
|
|
16
|
+
* This is useful to make all logic on browser side but not expose your API keys or no need to use customer's GPU.
|
|
17
|
+
*
|
|
18
|
+
* @see https://github.com/webgptorg/promptbook#remote-server
|
|
19
|
+
* @public exported from `@promptbook/remote-server`
|
|
20
|
+
* <- TODO: [🐱🚀] Change to `@promptbook/agent-server`
|
|
21
|
+
*/
|
|
22
|
+
export declare function startAgentServer(options: AgentsServerOptions): Promise<TODO_any>;
|
|
23
|
+
export {};
|
|
24
|
+
/**
|
|
25
|
+
* Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
|
|
26
|
+
*/
|