@promptbook/openai 0.103.0-1 → 0.103.0-3

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
@@ -378,19 +378,131 @@ Rest of the documentation is common for **entire promptbook ecosystem**:
378
378
 
379
379
 
380
380
 
381
- ## 🤍 The Book Abstract
381
+ ## 📖 The Book Whitepaper
382
382
 
383
- **It's time for a paradigm shift! The future of software is written in plain English, French, or Latin.**
383
+ For most business applications nowadays, the biggest challenge isn't about the raw capabilities of AI models. Large language models like GPT-5 or Claude-4.1 are extremely capable.
384
384
 
385
- During the computer revolution, we have seen [multiple generations of computer languages](https://github.com/webgptorg/promptbook/discussions/180), from the physical rewiring of the vacuum tubes through low-level machine code to the high-level languages like Python or JavaScript. And now, we're on the edge of the **next revolution**!
385
+ The main challenge is to narrow it down, constrain it, set the proper **context, rules, knowledge, and personality**. There are a lot of tools which can do exactly this. On one side, there are no-code platforms which can launch your agent in seconds. On the other side, there are heavy frameworks like Langchain or Semantic Kernel, which can give you deep control.
386
386
 
387
- It's a revolution of writing software in **plain human language** that is understandable and executable by both humans and machines and it's going to change everything!
387
+ Promptbook takes the best from both worlds. You are defining your AI behavior by simple **books**, which are very explicit. They are automatically enforced, but they are very easy to understand, very easy to write, and very reliable and portable.
388
388
 
389
- The incredible growth in power of microprocessors and the Moore's Law have been the driving force behind the ever-more powerful languages, and it's been an amazing journey! Similarly, the large language models (like GPT or Claude) are the next big thing in language technology, and they're set to transform the way we interact with computers.
390
389
 
391
- This shift will happen whether we're ready or not. Our mission is to make it excellent, not just good.
392
390
 
393
- **Join us in this journey!**
391
+ <img
392
+ alt="Paul Smith & Associés Book"
393
+ src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.&width=800&height=450&nonce=0"
394
+ />
395
+
396
+ <div style="page-break-after: always;"></div>
397
+
398
+ ### Aspects of great AI agent
399
+
400
+ We have created a language called **Book**, which allows you to write AI agents in their native language and create your own AI persona. Book provides a guide to define all the traits and commitments.
401
+
402
+ You can look at it as prompting (or writing a system message), but decorated by **commitments**.
403
+
404
+ #### `Persona` commitment
405
+
406
+ Personas define the character of your AI persona, its role, and how it should interact with users. It sets the tone and style of communication.
407
+
408
+
409
+
410
+ <img
411
+ alt="Paul Smith & Associés Book"
412
+ src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.&width=800&height=450&nonce=0"
413
+ />
414
+
415
+ #### `Knowledge` commitment
416
+
417
+ Knowledge Commitment allows you to provide specific information, facts, or context that the AI should be aware of when responding.
418
+
419
+ This can include domain-specific knowledge, company policies, or any other relevant information.
420
+
421
+ Promptbook Engine will automatically enforce this knowledge during interactions. When the knowledge is short enough, it will be included in the prompt. When it is too long, it will be stored in vector databases and RAG retrieved when needed. But you don't need to care about it.
422
+
423
+
424
+
425
+ <img
426
+ alt="Paul Smith & Associés Book"
427
+ src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20%20https%3A%2F%2Fcompany.com%2Fcompany-policies.pdf%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20https%3A%2F%2Fcompany.com%2Finternal-documents%2Femployee-handbook.docx&width=800&height=450&nonce=0"
428
+ />
429
+
430
+ #### `Rule` commitment
431
+
432
+ Rules will enforce specific behaviors or constraints on the AI's responses. This can include ethical guidelines, communication styles, or any other rules you want the AI to follow.
433
+
434
+ Depending on rule strictness, Promptbook will either propagate it to the prompt or use other techniques, like adversary agent, to enforce it.
435
+
436
+
437
+
438
+ <img
439
+ alt="Paul Smith & Associés Book"
440
+ src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.%0A%20%20%20%20%20%20%7C%20RULE%20Always%20ensure%20compliance%20with%20laws%20and%20regulations.%0A%20%20%20%20%20%20%7C%20RULE%20Never%20provide%20legal%20advice%20outside%20your%20area%20of%20expertise.%0A%20%20%20%20%20%20%7C%20RULE%20Never%20provide%20legal%20advice%20about%20criminal%20law.%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20%20https%3A%2F%2Fcompany.com%2Fcompany-policies.pdf%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20https%3A%2F%2Fcompany.com%2Finternal-documents%2Femployee-handbook.docx&width=800&height=450&nonce=0"
441
+ />
442
+
443
+ #### `Action` commitment
444
+
445
+ Action Commitment allows you to define specific actions that the AI can take during interactions. This can include things like posting on a social media platform, sending emails, creating calendar events, or interacting with your internal systems.
446
+
447
+
448
+
449
+ <img
450
+ alt="Paul Smith & Associés Book"
451
+ src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.%0A%20%20%20%20%20%20%7C%20RULE%20Always%20ensure%20compliance%20with%20laws%20and%20regulations.%0A%20%20%20%20%20%20%7C%20RULE%20Never%20provide%20legal%20advice%20outside%20your%20area%20of%20expertise.%0A%20%20%20%20%20%20%7C%20RULE%20Never%20provide%20legal%20advice%20about%20criminal%20law.%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20%20https%3A%2F%2Fcompany.com%2Fcompany-policies.pdf%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20https%3A%2F%2Fcompany.com%2Finternal-documents%2Femployee-handbook.docx%0A%20%20%20%20%20%20%7C%20ACTION%20When%20a%20user%20asks%20about%20an%20issue%20that%20could%20be%20treated%20as%20a%20crime%2C%20notify%20legal%40company.com.&width=800&height=450&nonce=0"
452
+ />
453
+
454
+ [Read more about the language](./BLUEPRINT.md)
455
+
456
+ <div style="page-break-after: always;"></div>
457
+
458
+ ### Where to use your AI agent in book
459
+
460
+ Books can be useful in various applications and scenarios. Here are some examples:
461
+
462
+ #### Chat apps:
463
+
464
+ Create your own chat shopping assistant and place it in your eShop.
465
+ You will be able to answer customer questions, help them find products, and provide personalized recommendations. Everything is tightly controlled by the book you have written.
466
+
467
+ #### Reply Agent:
468
+
469
+ Create your own AI agent, which will look at your emails and reply to them. It can even create drafts for you to review before sending.
470
+
471
+ #### Coding Agent:
472
+
473
+ Do you love Vibecoding, but the AI code is not always aligned with your coding style and architecture, rules, security, etc.? Create your own coding agent to help enforce your specific coding standards and practices.
474
+
475
+ This can be integrated to almost any Vibecoding platform, like GitHub Copilot, Amazon CodeWhisperer, Cursor, Cline, Kilocode, Roocode,...
476
+
477
+ They will work the same as you are used to, but with your specific rules written in book.
478
+
479
+ #### Internal Expertise
480
+
481
+ Do you have an app written in TypeScript, Python, C#, Java, or any other language, and you are integrating the AI.
482
+
483
+ You can avoid struggle with choosing the best model, its settings like temperature, max tokens, etc., by writing a book agent and using it as your AI expertise.
484
+
485
+ Doesn't matter if you do automations, data analysis, customer support, sentiment analysis, classification, or any other task. Your AI agent will be tailored to your specific needs and requirements.
486
+
487
+ Even works in no-code platforms!
488
+
489
+ <div style="page-break-after: always;"></div>
490
+
491
+ ### How to create your AI agent in book
492
+
493
+ Now you want to use it. There are several ways how to write your first book:
494
+
495
+ #### From scratch with help from Paul
496
+
497
+ We have written ai asistant in book who can help you with writing your first book.
498
+
499
+ #### Your AI twin
500
+
501
+ Copy your own behavior, personality, and knowledge into book and create your AI twin. It can help you with your work, personal life, or any other task.
502
+
503
+ #### AI persona workpool
504
+
505
+ Or you can pick from our library of pre-written books for various roles and tasks. You can find books for customer support, coding, marketing, sales, HR, legal, and many other roles.
394
506
 
395
507
 
396
508
 
@@ -507,78 +619,207 @@ Join our growing community of developers and users:
507
619
 
508
620
  ## 📘 Book Language Blueprint
509
621
 
510
- _A concise, Markdown-based DSL for crafting AI workflows and automations._
622
+ <blockquote style="color:#FFE600">
623
+ ⚠ This file is a work in progress and may be incomplete or inaccurate.
624
+ </blockquote>
511
625
 
512
- ### Introduction
626
+ ---
513
627
 
514
- Book is a Markdown-based language that simplifies the creation of AI applications, workflows, and automations. With human-readable commands, you can define inputs, outputs, personas, knowledge sources, and actions—without needing model-specific details.
628
+ Book is a simple format do define AI apps and agents. It is the source code the soul of AI apps and agents.. It's purpose is to avoid ambiguous UIs with multiple fields and low-level ways like programming in langchain.
515
629
 
516
- ### Example
630
+ Book is defined in file with `.book` extension
517
631
 
518
- ```book
519
- # 🌟 My First Book
632
+ ### Examples
520
633
 
521
- - BOOK VERSION 1.0.0
522
- - URL https://promptbook.studio/hello.book
523
- - INPUT PARAMETER {topic}
524
- - OUTPUT PARAMETER {article}
525
634
 
526
- # Write an Article
527
635
 
528
- - PERSONA Jane, marketing specialist with prior experience in tech and AI writing
529
- - KNOWLEDGE https://wikipedia.org/
530
- - KNOWLEDGE ./journalist-ethics.pdf
531
- - EXPECT MIN 1 Sentence
532
- - EXPECT MAX 5 Pages
636
+ <img
637
+ alt="Write an article about {topic} Book"
638
+ src="https://promptbook.studio/embed/book-preview.png?book=Write%20an%20article%20about%20%7Btopic%7D%0A%20%20%20%20%20%20%7C%20PERSONA%20Jane%2C%20marketing%20specialist%20with%20prior%20experience%20in%20tech%20and%20AI%20writing%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20https%3A%2F%2Fwikipedia.org%2F%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20.%2Fjournalist-ethics.pdf%0A%20%20%20%20%20%20%7C%20EXPECT%201%20Sentence%20-%205%20Pages%0A%20%20%20%20%20%20%7C%20RESULT%20%7Barticle%7D&width=800&height=450&nonce=0"
639
+ />
533
640
 
534
- > Write an article about {topic}
641
+ ---
535
642
 
536
- → {article}
537
- ```
538
643
 
539
- Each part of the book defines one of three circles:
540
644
 
541
- ### **1. What:** Workflows, Tasks and Parameters
645
+ <img
646
+ alt="Make post on LinkedIn based on @Input. Book"
647
+ src="https://promptbook.studio/embed/book-preview.png?book=Make%20post%20on%20LinkedIn%20based%20on%20%40Input.%0A%20%20%20%20%20%20%7C%20PERSONA%20%40Jane%2C%20an%20experienced%20copywriter%20and%20HR%20expert%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20cetin.cz%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20linkedin.com%2Fcompany%2Fcetin%2F&width=800&height=450&nonce=0"
648
+ />
649
+
650
+ ---
651
+
652
+
653
+
654
+ <img
655
+ alt="Odpověz na Email Book"
656
+ src="https://promptbook.studio/embed/book-preview.png?book=Odpov%C4%9Bz%20na%20Email%0A%20%20%20%20%20%20%7C%20%7BEmail%20content%7D%0A%20%20%20%20%20%20%7C%20PERSONA%20%40Pavol%20-%20pavolhejny.com%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20.%2Finstructions.pdf%0A%20%20%20%20%20%20%7C%20STYLE%20Professional%20tone%20of%20voice&width=800&height=450&nonce=0"
657
+ />
658
+
659
+ ---
660
+
661
+
662
+
663
+ <img
664
+ alt="Analyzuj {Případ}. Book"
665
+ src="https://promptbook.studio/embed/book-preview.png?book=Analyzuj%20%7BP%C5%99%C3%ADpad%7D.%0A%20%20%20%20%20%20%7C%20%7BDetaily%7D%0A%20%20%20%20%20%20%7C%20PERSONA%20%40Ji%C5%99%C3%AD%2C%20pr%C3%A1vn%C3%ADk%2C%20kter%C3%BD%20nikdy%20neode%C5%A1le%20informace%20o%20klientech%20mimo%20EU%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20%7B89%2F2012%20Sb.%20Ob%C4%8Dansk%C3%BD%20z%C3%A1kon%C3%ADk%7D&width=800&height=450&nonce=0"
666
+ />
667
+
668
+ iframe:
669
+
670
+ <iframe frameborder="0" style="width:100%;height:455px;" src="https://viewer.diagrams.net/?tags=%7B%7D&lightbox=1&highlight=0000ff&edit=_blank&layers=1&nav=1&title=#R%3Cmxfile%20scale%3D%221%22%20border%3D%220%22%20disableSvgWarning%3D%22true%22%20linkTarget%3D%22_blank%22%3E%3Cdiagram%20name%3D%22Page-1%22%20id%3D%22zo4WBBcyATChdUDADUly%22%3E7ZxtU%2BM2EMc%2FjWfaF2b8kMTwEkKOu%2Fa468BM77ViK4mKLLmy8nSfvitbihPiNEAaIHTfYHm1luzVT7vG%2F5l4cT9f3ChSTG5lRrkXBdnCi6%2B9KAo7YQ8OxrK0liBKastYsczaGsM9%2B0mdo7VOWUbLDUctJdes2DSmUgia6g0bUUrON91Gkm%2FOWpCxnTFoDPcp4XTL7QfL9KS2nnfXvD9TNp64mcPA9uTEOVtDOSGZnK%2BZ4oEX95WUum7liz7lJnouLvV1n3b0rm5MUaGfcoFdiRnhU%2Ftsf1KlGTwqWPtSaMIEVfZe9dIFoJyznBMBZ1fzCdP0viCp6ZrDgoNtonMOZyE07fgwKF3svMdw9eTADJU51WoJLvYCP7qw0bK8JPZ03sQ%2B7lnbZC3ukQs7ses9Xo3dhAQaNirtEbrYipAX9TjMcFUWRDSOvb%2BnZtGuMpmWPhOaKkG4b0j1R2EcdbNO6iej0cgfhufQGiaJnw7PaXIRJT2adpsBoDW2x2qaYiP0zovDuvjuYS%2FDs%2FgcjDlRYyZ8LQtjiwrd2IZSa5k35vX5goypzcG12n0%2F9rG3b2kEuPhltVkvwWE1UVB1jEjO%2BLLugmtIbkCxV95JuD0JHbdSyMedXtQ3Owd6ypqyq2pnc6nqwdR4%2BEtQO7nDr7XTkKQPYyWnIvPX%2FLUionT0rW5vRhQjcBTTnCqW1q5Cqhx2wrYXJaX2SQntPY6EVyBok63%2B1bGQJdNM7huP5vIvtu0zs5sW5mNjO8aQlNRQUntU29SvImiCwUlR2nUqFC2pmtFHUNSLfkseqPGRpYaDNAv%2FlYkHmn0RdorM2R0fsKFqRN4%2FNhe1Uxh060YUJi9AZ%2B52IRgSYBCh2gOV1wm%2BiGKqT5AYTDRHYuJsDwxgLl5WGTtRGHW3imOntTgGH7A2ht34YGgxxT0T5z8Gd%2Fffv11iWURmnlMWfzP%2FU50eMFgVj4VEFdBqwemigMhQkVZv3KkslnMFY6qq35g%2B3zmvfS9WB9TSoLddSwMspZgWj7cHfv%2F2%2FcfXwfXN4DSLKebGI3GRUs3EWfoTkx0muw8D9TGSXYjJ7uS54NVHV5PvIN9En%2BAvrP7StEwWNGLG87NgxmbI1P%2BYKbfoQ9VCyw6IWpjZcn6kFWq6MPY1TdA%2ByDWnI9PjHvDSmnOWZXyXtFgtOTWSW7CabI%2B62GtXF62Y2HmimBg64yFiohOw37XeGjod20bIf2qI%2FhO9NQxRcH3%2FL4eYlFFwxS%2FLpwIVCq7IBAqur4Usfjh5A5xRcEVmUHDFqoiCK5ZSTIsH7QEUXJGLNi5QcMVk9%2BGgRsEVuWjjAgVXZAoFV%2B9FgmsYtOuLb6K4RieouK504tdRXGNUXN%2F%2F2yFmZVRc8dPyqUCFiisygYrrayGLX07eAGdUXJEZVFyxKqLiiqUU0%2BJBewAVV%2BSijQtUXDHZfTioUXFFLtq4QMUVmULF1XuZ4hq9meIKp83PFVd9N82vPseDfwA%3D%3C%2Fdiagram%3E%3C%2Fmxfile%3E"></iframe>
671
+
672
+ books.svg
673
+
674
+ ![Books](./books/diagram/books.svg)
675
+
676
+ books.png
677
+
678
+ ![Books](./books/diagram/books.png)
679
+
680
+ ### Basic Commitments:
681
+
682
+ Book is composed of commitments, which are the building blocks of the book. Each commitment defines a specific task or action to be performed by the AI agent. The commitments are defined in a structured format, allowing for easy parsing and execution.
683
+
684
+ #### `PERSONA`
685
+
686
+ defines basic contour of
687
+
688
+ > PERSONA @Joe Average man with
689
+
690
+ also the PERSONA is
691
+
692
+ Describes
693
+
694
+ #### `RULE` or `RULES`
695
+
696
+ defines
697
+
698
+ #### `STYLE`
699
+
700
+ xxx
701
+
702
+ #### `SAMPLE`
703
+
704
+ xxx
705
+
706
+ #### `KNOWLEDGE`
707
+
708
+ xxx
709
+
710
+ #### `EXPECT`
711
+
712
+ xxx
713
+
714
+ #### `FORMAT`
715
+
716
+ xxx
717
+
718
+ #### `JOKER`
719
+
720
+ xxx
721
+
722
+ #### `MODEL`
723
+
724
+ xxx
725
+
726
+ #### `ACTION`
727
+
728
+ xxx
729
+
730
+ #### `META`
731
+
732
+ ### Names
733
+
734
+ each commitment is
735
+
736
+ `PERSONA`
737
+
738
+ Variable names
739
+
740
+ ### Types
741
+
742
+ ### Miscellaneous aspects of Book language
743
+
744
+ #### Named vs Anonymous commitments
745
+
746
+ #### Single line vs multiline
747
+
748
+ #### Bookish vs Non-bookish definitions
749
+
750
+ ---
751
+
752
+ ## **\_\_\_\_**
753
+
754
+ Great context and prompt can make or break you AI app. In last few years we have came from simple one-shot prompts. When you want to add conplexity you have finetunned the model or add better orchestration. But with really large large language models the context seems to be a king.
755
+
756
+ The Book is the language to describe and define your AI app. Its like a shem for a Golem, book is the shem and model is the golem.
757
+
758
+
759
+
760
+ <img
761
+ alt="Franz Kafka Book"
762
+ src="https://promptbook.studio/embed/book-preview.png?book=Franz%20Kafka%0A%20%20%20%20%20%20%7C%20PERSONA%20Franz%20Kafka%2C%20a%20writer%20who%20is%20interested%20in%20the%20human%20condition%20and%20the%20absurdity%20of%20life%2C%20speaks%20German%20and%20Czech%20and%20English%0A%20%20%20%20%20%20%7C%20STYLE%20%7Bkafka.com%2Fthe-castle%7D%0A%20%20%20%20%20%20%7C%20STYLE%20%7Bkafka.com%2Fthe-trial.pdf%7D%0A%20%20%20%20%20%20%7C%20STYLE%20%7Bkafka.com%2Fmetamorphosis.docx%7D%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20Franz%20Kafka%20has%20a%20deep%20understanding%20of%20existentialism%2C%20surrealism%2C%20and%20the%20human%20psyche%0A%20%20%20%20%20%20%7C%20GOAL%20Write%20a%20short%20story%20that%20explores%20the%20themes%20of%20alienation%2C%20bureaucracy%2C%20and%20the%20absurd%0A%20%20%20%20%20%20%7C%20ACTION%20%7Bmcp&width=800&height=450&nonce=0"
763
+ />
764
+
765
+ ## Who, what and how?
766
+
767
+ To write a good prompt and the book you will be answering 3 main questions
768
+
769
+ - **Who** is working on the task, is it a team or an individual? What is the role of the person in the team? What is the background of the person? What is the motivation of the person to work on this task?
770
+ You rather want `Paul, an typescript developer who prefers SOLID code` not `gemini-2`
771
+ - **What**
772
+ - **How**
542
773
 
543
- What work needs to be done. Each book defines a [workflow _(scenario or pipeline)_](https://github.com/webgptorg/promptbook/discussions/88), which is one or more tasks. Each workflow has a fixed input and output. For example, you have a book that generates an article from a topic. Once it generates an article about AI, once about marketing, once about cooking. The workflow (= your AI program) is the same, only the input and output change.
774
+ each commitment (described bellow) is connected with one of theese 3 questions.
544
775
 
545
- **Related commands:**
776
+ ### Commitments
546
777
 
547
- - [PARAMETER](https://github.com/webgptorg/promptbook/blob/main/documents/commands/PARAMETER.md)
778
+ Commitment is one piece of book, you can imagine it as one paragraph of book.
548
779
 
549
- ### **2. Who:** Personas
780
+ Each commitment starts in a new line with commitment name, its usually in UPPERCASE and follows a contents of that commitment. Contents of the commithemt is defined in natural language.
550
781
 
551
- Who does the work. Each task is performed by a persona. A persona is a description of your virtual employee. It is a higher abstraction than the model, tokens, temperature, top-k, top-p and other model parameters.
782
+ Commitments are chained one after another, in general commitments which are written later are more important and redefines things defined earlier.
552
783
 
553
- You can describe what you want in human language like `Jane, creative writer with a sense of sharp humour` instead of `gpt-4-2024-13-31, temperature 1.2, top-k 40, STOP token ".\n",...`.
784
+ Each commitment falls into one or more of cathegory who, what or how
554
785
 
555
- Personas can have access to different knowledge, tools and actions. They can also consult their work with other personas or user, if allowed.
786
+ Here are some basic commintemts:
556
787
 
557
- **Related commands:**
788
+ - `PERSONA` tells **who** is working on the task
789
+ - `KNOWLEDGE` describes **what** knowledge the person has
790
+ - `GOAL` describes **what** is the goal of the task
791
+ - `ACTION` describes **what** actions can be done
792
+ - `RULE` describes **what** rules should be followed
793
+ - `STYLE` describes **how** the output should be presented
558
794
 
559
- - [PERSONA](https://github.com/webgptorg/promptbook/blob/main/documents/commands/PERSONA.md)
795
+ ### Variables and references
560
796
 
561
- ### **3. How:** Knowledge, Instruments and Actions
797
+ When the prompt should be to be useful it should have some fixed static part and some variable dynamic part
562
798
 
563
- The resources used by the personas are used to do the work.
564
799
 
565
- **Related commands:**
566
800
 
567
- - [KNOWLEDGE](https://github.com/webgptorg/promptbook/blob/main/documents/commands/KNOWLEDGE.md) of documents, websites, and other resources
568
- - [INSTRUMENT](https://github.com/webgptorg/promptbook/blob/main/documents/commands/INSTRUMENT.md) for real-time data like time, location, weather, stock prices, searching the internet, calculations, etc.
569
- - [ACTION](https://github.com/webgptorg/promptbook/blob/main/documents/commands/ACTION.md) for actions like sending emails, creating files, ending a workflow, etc.
801
+ <img
802
+ alt="Untitled Book"
803
+ src="https://promptbook.studio/embed/book-preview.png?book=&width=800&height=450&nonce=0"
804
+ />
570
805
 
571
- ### General Principles
806
+ ### Imports
572
807
 
573
- Book language is based on markdown. It is subset of markdown. It is designed to be easy to read and write. It is designed to be understandable by both humans and machines and without specific knowledge of the language.
808
+ ### Layering
574
809
 
575
- The file has a `.book` extension and uses UTF-8 encoding without BOM.
810
+ ### Book defined in book
576
811
 
577
- Books have two variants: flat — just a prompt without structure, and full — with tasks, commands, and prompts.
812
+ ###
578
813
 
579
- As it is source code, it can leverage all the features of version control systems like git and does not suffer from the problems of binary formats, proprietary formats, or no-code solutions.
814
+ Book vs:
580
815
 
581
- But unlike programming languages, it is designed to be understandable by non-programmers and non-technical people.
816
+ - Why just dont pick the right model
817
+ - Orchestration frameworks - Langchain, Google Agent ..., Semantic Kernel,...
818
+ - Finetunning
819
+ - Temperature, top_t, top_k,... etc.
820
+ - System message
821
+ - MCP server
822
+ - function calling
582
823
 
583
824
 
584
825
 
package/esm/index.es.js CHANGED
@@ -19,7 +19,7 @@ const BOOK_LANGUAGE_VERSION = '1.0.0';
19
19
  * @generated
20
20
  * @see https://github.com/webgptorg/promptbook
21
21
  */
22
- const PROMPTBOOK_ENGINE_VERSION = '0.103.0-1';
22
+ const PROMPTBOOK_ENGINE_VERSION = '0.103.0-3';
23
23
  /**
24
24
  * TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
25
25
  * Note: [💞] Ignore a discrepancy between file name and entity name
@@ -1,4 +1,5 @@
1
1
  import type { AgentBasicInformation } from '../../../book-2.0/agent-source/AgentBasicInformation';
2
+ import type { string_book } from '../../../book-2.0/agent-source/string_book';
2
3
  import type { string_css_class } from '../../../types/typeAliases';
3
4
  /**
4
5
  * Props of `AvatarProfile`
@@ -10,6 +11,10 @@ export type AvatarProfileProps = {
10
11
  * Agent to be shown
11
12
  */
12
13
  readonly agent: AgentBasicInformation;
14
+ /**
15
+ * The source of the agent, which will be displayed in the BookEditor.
16
+ */
17
+ readonly agentSource: string_book;
13
18
  /**
14
19
  * Optional CSS class name which will be added to root <div> element
15
20
  */
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import type { string_book } from '../../../book-2.0/agent-source/string_book';
3
+ type AvatarProfileTooltipProps = {
4
+ agentSource: string_book;
5
+ position: {
6
+ top: number;
7
+ left: number;
8
+ };
9
+ };
10
+ /**
11
+ *
12
+ * @private internal subcomponent of `<Chat>` component
13
+ */
14
+ export declare const AvatarProfileTooltip: import("react").ForwardRefExoticComponent<AvatarProfileTooltipProps & import("react").RefAttributes<HTMLDivElement>>;
15
+ export {};
@@ -8,6 +8,14 @@ import type { string_knowledge_source_content } from '../../types/typeAliases';
8
8
  * @public exported from `@promptbook/components`
9
9
  */
10
10
  export type BookEditorProps = {
11
+ /**
12
+ * The source of the agent to be displayed in the editor.
13
+ */
14
+ readonly agentSource?: string_book;
15
+ /**
16
+ * Callback function to be called when the editor is closed.
17
+ */
18
+ onClose?(): void;
11
19
  /**
12
20
  * Additional CSS classes to apply to the editor container.
13
21
  */
@@ -46,6 +54,12 @@ export type BookEditorProps = {
46
54
  * By default, the footer is hidden.
47
55
  */
48
56
  readonly isFooterShown?: boolean;
57
+ /**
58
+ * If true, the editor is in read-only mode
59
+ *
60
+ * @default false
61
+ */
62
+ readonly isReadonly?: boolean;
49
63
  };
50
64
  /**
51
65
  * Renders a book editor
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import type { BookEditorProps } from './BookEditor';
3
+ /**
4
+ * @private util of `<BookEditor />`
5
+ */
6
+ export declare function BookEditorWrapper(props: BookEditorProps): import("react").ReactPortal;
@@ -1,5 +1,6 @@
1
1
  import type { id, string_color, string_person_fullname, string_url_image } from '../../../types/typeAliases';
2
2
  import { Color } from '../../../utils/color/Color';
3
+ import type { string_book } from '../../../book-2.0/agent-source/string_book';
3
4
  /**
4
5
  * A participant in the chat
5
6
  *
@@ -26,6 +27,10 @@ export type ChatParticipant = {
26
27
  * Color associated with the participant
27
28
  */
28
29
  color?: string_color | Color;
30
+ /**
31
+ * Agent source for avatar profile
32
+ */
33
+ agentSource?: string_book;
29
34
  };
30
35
  /**
31
36
  * TODO: [🕛] Unite `AgentBasicInformation`, `ChatParticipant`, `LlmExecutionTools` + `LlmToolsMetadata`
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from 'react';
2
+ /**
3
+ *
4
+ * @private internal subcomponent of `<Chat>` component
5
+ */
6
+ export declare function Modal({ children, onClose, className, }: {
7
+ children: ReactNode;
8
+ onClose: () => void;
9
+ className?: string;
10
+ }): import("react").ReactPortal;
@@ -15,7 +15,7 @@ export declare const BOOK_LANGUAGE_VERSION: string_semantic_version;
15
15
  export declare const PROMPTBOOK_ENGINE_VERSION: string_promptbook_version;
16
16
  /**
17
17
  * Represents the version string of the Promptbook engine.
18
- * It follows semantic versioning (e.g., `0.103.0-0`).
18
+ * It follows semantic versioning (e.g., `0.103.0-2`).
19
19
  *
20
20
  * @generated
21
21
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@promptbook/openai",
3
- "version": "0.103.0-1",
3
+ "version": "0.103.0-3",
4
4
  "description": "Promptbook: Turn your company's scattered knowledge into AI ready books",
5
5
  "private": false,
6
6
  "sideEffects": false,
@@ -102,7 +102,7 @@
102
102
  "module": "./esm/index.es.js",
103
103
  "typings": "./esm/typings/src/_packages/openai.index.d.ts",
104
104
  "peerDependencies": {
105
- "@promptbook/core": "0.103.0-1"
105
+ "@promptbook/core": "0.103.0-3"
106
106
  },
107
107
  "dependencies": {
108
108
  "bottleneck": "^2.19.5",
package/umd/index.umd.js CHANGED
@@ -25,7 +25,7 @@
25
25
  * @generated
26
26
  * @see https://github.com/webgptorg/promptbook
27
27
  */
28
- const PROMPTBOOK_ENGINE_VERSION = '0.103.0-1';
28
+ const PROMPTBOOK_ENGINE_VERSION = '0.103.0-3';
29
29
  /**
30
30
  * TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
31
31
  * Note: [💞] Ignore a discrepancy between file name and entity name