ad-agent_architecture 0.0.10 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5f5f327df1d3c95d9adf30cbbe9d973b33457737096d21c607fbe080caa9d839
4
- data.tar.gz: 948a4cbd3540dc300eedb249c96b13e1963058abbd4f2c205ea23ce55d446431
3
+ metadata.gz: 2e62425f0ffeff140581be7741ce8b429fb9437a196294e071d017e343894562
4
+ data.tar.gz: b7da8713c09d8179f840a676787aac6608143fde09a112fbe683c9205e9a37d2
5
5
  SHA512:
6
- metadata.gz: 6b7f671d1ad1c28534f6e35f0d141fdb05c8fe0c28192e12087d10fbacb67265e451d17a91df3194e3495d8fec98881ff31a4ec7000db10f13886bc9c0de5785
7
- data.tar.gz: 07de02cccb8f30f128f8e81663eeba0e4e4dc190394c030675a8d574259e5c50d85bb8d4643de1c94db197b7261e2f7bb22b3ed2708eafdb6ac7c07802341258
6
+ metadata.gz: 9e11fffa978aa478142fe2a540c08c2917aa9a169ab0c19f35a19ea449fb7d9a6b06ddbce72a58b489cd50a367cd2e2dd571622f818a14ad63813a770c931626
7
+ data.tar.gz: 733bf3314271fa108de844ffc4fb2189bb7d77742bbfae31e2316b2883995eb2bc21d2888b49da7954db0865bf9cb9c226edce7cc4bde490f4fda535f206f222
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [0.0.10](https://github.com/appydave/ad-agent_architecture/compare/v0.0.9...v0.0.10) (2024-06-29)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * refactor DSL to use component DSLs ([597050a](https://github.com/appydave/ad-agent_architecture/commit/597050ad727f1aaf8eb3e6589cf1c618f41499e7))
7
+
1
8
  ## [0.0.9](https://github.com/appydave/ad-agent_architecture/compare/v0.0.8...v0.0.9) (2024-06-29)
2
9
 
3
10
 
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'k_log'
4
-
5
3
  module Ad
6
4
  module AgentArchitecture
7
5
  module Report
@@ -12,15 +10,17 @@ module Ad
12
10
  def print(workflow)
13
11
  log.section_heading 'Workflow Details Report'
14
12
  log.kv 'Name', workflow.name
15
- log.kv 'Description', workflow.description
13
+ # log.kv 'Description', workflow.description
16
14
 
17
15
  workflow.sections.each do |section|
18
16
  log.section_heading "Section: #{section.name}"
19
- log.kv 'Order', section.order
17
+ # log.kv 'Order', section.order
20
18
  section.steps.each do |step|
21
19
  log.section_heading "Step: #{step.name}"
22
- log.kv 'Order', step.order
23
- log.kv 'Prompt', step.prompt
20
+ # log.kv 'Order', step.order
21
+ # log.kv 'Prompt', step.prompt
22
+ # puts step.input_attributes.first
23
+ # An ERROR here means you have not configured an attribute name
24
24
  log.kv 'Input Attributes', step.input_attributes.map { |ia| ia.attribute.name }.join(', ')
25
25
  log.kv 'Output Attributes', step.output_attributes.map { |oa| oa.attribute.name }.join(', ')
26
26
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ad
4
4
  module AgentArchitecture
5
- VERSION = '0.0.10'
5
+ VERSION = '0.0.11'
6
6
  end
7
7
  end
@@ -22,11 +22,11 @@ require 'ad/agent_architecture/dsl/agent_dsl'
22
22
  require 'ad/agent_architecture/dsl/actions/save_database'
23
23
  require 'ad/agent_architecture/dsl/actions/save_json'
24
24
  require 'ad/agent_architecture/dsl/actions/save_yaml'
25
- # require 'ad/agent_architecture/report/workflow_detail_report'
26
- # require 'ad/agent_architecture/report/workflow_list_report'
25
+ require 'ad/agent_architecture/report/workflow_detail_report'
26
+ require 'ad/agent_architecture/report/workflow_list_report'
27
27
 
28
28
  # Alias'
29
- # AgentWorkflow = Ad::AgentArchitecture::Dsl::AgentWorkflowDsl
29
+ Agent = Ad::AgentArchitecture::Dsl::AgentDsl
30
30
 
31
31
  module Ad
32
32
  module AgentArchitecture
data/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "ad-agent_architecture",
3
- "version": "0.0.10",
3
+ "version": "0.0.11",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "ad-agent_architecture",
9
- "version": "0.0.10",
9
+ "version": "0.0.11",
10
10
  "devDependencies": {
11
11
  "@klueless-js/semantic-release-rubygem": "github:klueless-js/semantic-release-rubygem",
12
12
  "@semantic-release/changelog": "^6.0.3",
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ad-agent_architecture",
3
- "version": "0.0.10",
3
+ "version": "0.0.11",
4
4
  "description": "Architecture/Schema for AI Agents",
5
5
  "scripts": {
6
6
  "release": "semantic-release"
data/workflow.json CHANGED
@@ -1,78 +1,122 @@
1
1
  {
2
- "name": "YouTube Title Creator",
2
+ "name": "YouTube Transcript to Medium Article",
3
3
  "sections": [
4
4
  {
5
- "name": "Research",
5
+ "name": "Analysis",
6
6
  "order": 1,
7
7
  "steps": [
8
8
  {
9
- "name": "Starting Context",
9
+ "name": "Generate Outline",
10
10
  "order": 1,
11
11
  "input_attributes": [
12
-
12
+ "transcript"
13
13
  ],
14
14
  "output_attributes": [
15
-
15
+ "outline"
16
16
  ],
17
- "prompt": "best_practice"
17
+ "prompt": "Analyze [transcript] and generate a preliminary outline for a blog post."
18
18
  },
19
19
  {
20
- "name": "Basic titles",
20
+ "name": "Write First Draft",
21
21
  "order": 2,
22
22
  "input_attributes": [
23
- "basic_title",
24
- "basic_keyword",
25
- "basic_transcript"
23
+ "outline"
26
24
  ],
27
25
  "output_attributes": [
28
- "potential_titles"
26
+ "first_draft"
29
27
  ],
30
- "prompt": "Keyword: [start_keyword]\nTitle: [start_title]\n\nTranscript:\n\n[start_transcript]\n"
28
+ "prompt": "Write a blog post based on [outline]."
31
29
  },
32
30
  {
33
- "name": "Working Title",
31
+ "name": "Generate Intros",
34
32
  "order": 3,
35
33
  "input_attributes": [
36
- "potential_titles"
34
+ "first_draft"
37
35
  ],
38
36
  "output_attributes": [
39
- "working_title"
40
- ]
37
+ "intro_variations"
38
+ ],
39
+ "prompt": "Create 5 introduction variations for [first_draft]."
40
+ },
41
+ {
42
+ "name": "Update Draft with Intro",
43
+ "order": 4,
44
+ "input_attributes": [
45
+ "first_draft",
46
+ "intro_variation"
47
+ ],
48
+ "output_attributes": [
49
+ "second_draft"
50
+ ],
51
+ "prompt": "Update [first_draft] with a better intro [intro_variation]."
52
+ },
53
+ {
54
+ "name": "Analyse Intro",
55
+ "order": 5,
56
+ "input_attributes": [
57
+ "second_draft"
58
+ ],
59
+ "output_attributes": [
60
+ "intro_analysis"
61
+ ],
62
+ "prompt": "Analyze the article [second_draft] introduction"
63
+ },
64
+ {
65
+ "name": "Combine Intro Analysis",
66
+ "order": 6,
67
+ "input_attributes": [
68
+
69
+ ],
70
+ "output_attributes": [
71
+ "intro_analysis_combined"
72
+ ],
73
+ "prompt": ""
41
74
  }
42
75
  ]
43
76
  }
44
77
  ],
45
78
  "attributes": {
46
- "start_title": {
47
- "name": "start_title",
79
+ "transcript": {
80
+ "name": "transcript",
48
81
  "type": "string",
49
82
  "is_array": false
50
83
  },
51
- "start_keyword": {
52
- "name": "start_keyword",
84
+ "outline": {
85
+ "name": "outline",
53
86
  "type": "string",
54
87
  "is_array": false
55
88
  },
56
- "start_transcript": {
57
- "name": "start_transcript",
89
+ "first_draft": {
90
+ "name": "first_draft",
58
91
  "type": "string",
59
92
  "is_array": false
60
93
  },
61
- "potential_titles": {
62
- "name": "potential_titles",
94
+ "intro_variations": {
95
+ "name": "intro_variations",
63
96
  "type": "array",
64
97
  "is_array": false
65
98
  },
66
- "working_title": {
67
- "name": "working_title",
99
+ "intro_variation": {
100
+ "name": "intro_variation",
101
+ "type": "string",
102
+ "is_array": false
103
+ },
104
+ "second_draft": {
105
+ "name": "second_draft",
106
+ "type": "string",
107
+ "is_array": false
108
+ },
109
+ "intro_analysis": {
110
+ "name": "intro_analysis",
111
+ "type": "string",
112
+ "is_array": false
113
+ },
114
+ "intro_analysis_combined": {
115
+ "name": "intro_analysis_combined",
68
116
  "type": "string",
69
117
  "is_array": false
70
118
  }
71
119
  },
72
- "prompts": [
73
- {
74
- "name": "best_practice",
75
- "path": "youtube/title_creator/best_practice.md"
76
- }
77
- ]
120
+ "prompts": {
121
+ }
78
122
  }
data/workflow.yaml CHANGED
@@ -1,56 +1,82 @@
1
1
  ---
2
- :name: YouTube Title Creator
2
+ :name: YouTube Transcript to Medium Article
3
3
  :sections:
4
- - :name: Research
4
+ - :name: Analysis
5
5
  :order: 1
6
6
  :steps:
7
- - :name: Starting Context
7
+ - :name: Generate Outline
8
8
  :order: 1
9
- :input_attributes: []
10
- :output_attributes: []
11
- :prompt: :best_practice
12
- - :name: Basic titles
9
+ :input_attributes:
10
+ - :transcript
11
+ :output_attributes:
12
+ - :outline
13
+ :prompt: Analyze [transcript] and generate a preliminary outline for a blog post.
14
+ - :name: Write First Draft
13
15
  :order: 2
14
16
  :input_attributes:
15
- - :basic_title
16
- - :basic_keyword
17
- - :basic_transcript
17
+ - :outline
18
18
  :output_attributes:
19
- - :potential_titles
20
- :prompt: |
21
- Keyword: [start_keyword]
22
- Title: [start_title]
23
-
24
- Transcript:
25
-
26
- [start_transcript]
27
- - :name: Working Title
19
+ - :first_draft
20
+ :prompt: Write a blog post based on [outline].
21
+ - :name: Generate Intros
28
22
  :order: 3
29
23
  :input_attributes:
30
- - :potential_titles
24
+ - :first_draft
25
+ :output_attributes:
26
+ - :intro_variations
27
+ :prompt: Create 5 introduction variations for [first_draft].
28
+ - :name: Update Draft with Intro
29
+ :order: 4
30
+ :input_attributes:
31
+ - :first_draft
32
+ - :intro_variation
33
+ :output_attributes:
34
+ - :second_draft
35
+ :prompt: Update [first_draft] with a better intro [intro_variation].
36
+ - :name: Analyse Intro
37
+ :order: 5
38
+ :input_attributes:
39
+ - :second_draft
31
40
  :output_attributes:
32
- - :working_title
41
+ - :intro_analysis
42
+ :prompt: Analyze the article [second_draft] introduction
43
+ - :name: Combine Intro Analysis
44
+ :order: 6
45
+ :input_attributes: []
46
+ :output_attributes:
47
+ - :intro_analysis_combined
48
+ :prompt: ''
33
49
  :attributes:
34
- :start_title:
35
- :name: :start_title
50
+ :transcript:
51
+ :name: :transcript
36
52
  :type: :string
37
53
  :is_array: false
38
- :start_keyword:
39
- :name: :start_keyword
54
+ :outline:
55
+ :name: :outline
40
56
  :type: :string
41
57
  :is_array: false
42
- :start_transcript:
43
- :name: :start_transcript
58
+ :first_draft:
59
+ :name: :first_draft
44
60
  :type: :string
45
61
  :is_array: false
46
- :potential_titles:
47
- :name: :potential_titles
62
+ :intro_variations:
63
+ :name: :intro_variations
48
64
  :type: :array
49
65
  :is_array: false
50
- :working_title:
51
- :name: :working_title
66
+ :intro_variation:
67
+ :name: :intro_variation
68
+ :type: :string
69
+ :is_array: false
70
+ :second_draft:
71
+ :name: :second_draft
72
+ :type: :string
73
+ :is_array: false
74
+ :intro_analysis:
75
+ :name: :intro_analysis
76
+ :type: :string
77
+ :is_array: false
78
+ :intro_analysis_combined:
79
+ :name: :intro_analysis_combined
52
80
  :type: :string
53
81
  :is_array: false
54
- :prompts:
55
- - :name: :best_practice
56
- :path: youtube/title_creator/best_practice.md
82
+ :prompts: {}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ad-agent_architecture
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys