Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
3c853b7
Added Ukrainian
NeonDmitry Nov 17, 2025
6a2c682
Update skill.json
NeonDmitry Nov 17, 2025
9cc37ca
Update test_intents.yaml
NeonDmitry Nov 17, 2025
24cf5b6
Update __init__.py
NeonDmitry Nov 20, 2025
6243178
Update test_intents.yaml
NeonDmitry Nov 23, 2025
cfd006c
Update company.rx
NeonDmitry Dec 4, 2025
50566bf
Update company.rx
NeonDmitry Dec 4, 2025
50f3c85
Update stock_price.intent
NeonDmitry Jan 19, 2026
817e1d9
Update test_intents.yaml
NeonDmitry Jan 19, 2026
febe5a0
Update test_intents.yaml
NeonDmitry Jan 19, 2026
f05123a
Update test_intents.yaml
NeonDmitry Jan 19, 2026
65d38b0
Update test_intents.yaml
NeonDmitry Jan 19, 2026
3f72367
Update test_intents.yaml
NeonDmitry Jan 19, 2026
fae3313
Update test_intents.yaml
NeonDmitry Jan 19, 2026
0f7f359
Update company.rx
NeonDmitry Jan 19, 2026
3c1d249
Update company.rx
NeonDmitry Jan 19, 2026
25a4936
Update test_intents.yaml
NeonDmitry Jan 19, 2026
d780396
Enhance company name handling in StockSkill and update regex patterns…
NeonDmitry Jan 19, 2026
0c9a4d1
Refine regex patterns in company.rx to enhance company price inquirie…
NeonDmitry Jan 19, 2026
bc5fb18
Update __init__.py
NeonDmitry Jan 19, 2026
2272829
Update company.rx
NeonDmitry Jan 20, 2026
6ee4149
Update __init__.py
NeonDmitry Jan 20, 2026
28b18e9
Update company.rx
NeonDmitry Jan 20, 2026
e07db3c
Update __init__.py
NeonDmitry Jan 20, 2026
0c144c6
Handle `self.translate_co` list in CommonQuery method
NeonDaniel Jan 26, 2026
78531cc
Replace commented company regex
NeonDaniel Jan 26, 2026
dc663c5
Update regex based on test failure
NeonDaniel Jan 26, 2026
3e563af
Update neon-minerva test dependency to resolve CommonQuery test issue
NeonDaniel Jan 27, 2026
8ebb3ed
Merge pull request #1 from NeonDaniel/ua_translation_2
NeonDmitry Mar 30, 2026
f16fbd7
Update company.rx
NeonDmitry Apr 7, 2026
261dc2a
Update company.rx
NeonDmitry Apr 7, 2026
4dca209
Update company.rx
NeonDmitry Apr 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 8 additions & 2 deletions neon_skill_stock/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,11 @@ def __init__(self, **kwargs):
"coca cola": "ko",
"coca-cola": "ko",
"google": "goog",
"exxonmobil": "xom"}
"exxonmobil": "xom",
"ммм": "mmm",
"кока кола": "ko",
"кокакола": "ko",
"гугл": "goog"}

@classproperty
def runtime_requirements(self):
Expand Down Expand Up @@ -112,10 +116,12 @@ def handle_stock_price(self, message):

def CQS_match_query_phrase(self, phrase: str):
company = self._extract_company(phrase)
LOG.info(company)
if not company:
LOG.debug(f"no company found in {phrase}")
return None
try:
company = self.translate_co.get(company.lower(), company)
match = self._search_company(company)
except Exception as e:
LOG.exception(e)
Expand Down Expand Up @@ -175,7 +181,7 @@ def _get_stock_price(symbol: str):

def _extract_company(self, utt):
rx_file = self.find_resource('company.rx', 'regex')
LOG.debug(f"Resolved: {rx_file}")
LOG.info(f"Resolved: {rx_file}")
if rx_file:
with open(rx_file) as f:
for pat in f.read().splitlines():
Expand Down
1 change: 1 addition & 0 deletions neon_skill_stock/locale/uk-ua/dialog/api.error.dialog
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Ціна акцій недоступна через помилку API: {error}
2 changes: 2 additions & 0 deletions neon_skill_stock/locale/uk-ua/dialog/not.found.dialog
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Вибачте, я не зміг знайти ціну акцій для {{company}}.
{{company}} не існує або не має ціни акцій.
1 change: 1 addition & 0 deletions neon_skill_stock/locale/uk-ua/dialog/stock.price.dialog
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{{company}}, з тікерним символом {{symbol}}, зараз торгується по {{price}} доларів за акцію.</speak> Надано {{provider}}.
5 changes: 5 additions & 0 deletions neon_skill_stock/locale/uk-ua/intent/stock_price.intent
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
(скажи мені|я хочу знати) (|яка)(ціна|вартість) (акцій|акції|паю|паїв|біржі) (для|компанії) {company}
скажи мені за якою ціною торгується {company}
яка вартість акцій {company}
який курс акцій {company}
я хочу знати (ціну|вартість) (акцій|акції|паю|паїв|біржі) (для|компанії) {company}
5 changes: 5 additions & 0 deletions neon_skill_stock/locale/uk-ua/regex/company.rx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
(акції|акція|акцій) (про|для|від) (?P<Company>.*)
(чи|є|це) (?P<Company>.*) (торгується|торгівля|акції|акція|в торгівлі|на біржі)
(?P<Company>.*) (торгується|акції|акція)
(про) (?P<Company>.*) (акції|акція|акцій)
(акції|акція|акцій) (?P<Company>.*)
2 changes: 1 addition & 1 deletion requirements/test.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
neon-minerva[padatious]~=0.3,>=0.3.1a1
neon-minerva[padatious]~=0.3,>=0.3.1a3
53 changes: 26 additions & 27 deletions skill.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,31 @@
{
"title": "Stock",
"url": "https://github.com/NeonGeckoCom/skill-stock",
"title": "neon-skill-stock",
"icon": "https://raw.githack.com/FortAwesome/Font-Awesome/master/svgs/solid/money-check-alt.svg",
"summary": "This skill provides stock values.",
"short_description": "This skill provides stock values.",
"description": "Use this skill to lookup stock prices. Use of this skill requires use of third-party APIs. This skill will use Neon AI servers by default, but you can deploy your own instance of [Diana](https://github.com/NeonGeckoCom/neon-diana-utils).",
"examples": [
"What is the share price for Amazon?",
"What is the stock price for Microsoft?"
],
"desktopFile": false,
"warning": "",
"systemDeps": false,
"credits": [
"Neongecko"
],
"categories": [
"Information",
"Daily"
],
"tags": [],
"category": "Information",
"package_name": "neon-skill-stock",
"pip_spec": "neon-skill-stock",
"license": "BSD-3-Clause",
"author": "Neongecko",
"version": "2.0.1a2",
"url": "https://github.com/NeonGeckoCom/skill-stock",
"skill_id": "skill-stock.neongeckocom=neon_skill_stock:StockSkill",
"skillname": "skill-stock",
"authorname": "NeonGeckoCom",
"name": "neon-skill-stock",
"requirements": {
"python": [
"neon-utils~=1.12",
Expand All @@ -21,6 +36,9 @@
"system": {},
"skill": []
},
"desktopFile": false,
"warning": "",
"systemDeps": false,
"incompatible_skills": [],
"platforms": [
"i386",
Expand All @@ -30,25 +48,6 @@
"arm"
],
"branch": "master",
"license": "BSD-3-Clause",
"icon": "https://raw.githack.com/FortAwesome/Font-Awesome/master/svgs/solid/money-check-alt.svg",
"category": "Information",
"categories": [
"Information",
"Daily"
],
"tags": [
"NeonGecko",
"NeonAI",
"stock",
"finance"
],
"credits": [
"Mycroft AI",
"NeonDaniel",
"reginaneon"
],
"skillname": "skill-stock",
"authorname": "NeonGeckoCom",
"foldername": null
"foldername": null,
"short_description": "This skill provides stock values."
}
14 changes: 14 additions & 0 deletions test/test_intents.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,27 @@ en-us:
# - what is the share price of apple:
# - company: apple

uk-ua:
stock_price.intent:
- я хочу знати ціну акцій для microsoft:
- company: microsoft
- скажи мені за якою ціною торгується tesla:
- company: tesla
- яка вартість акцій apple:
- company: apple
common query:
en-us:
- what is amazon trading at
- what is alphabet share price
- what is the share price of apple
- what is the stock price for microsoft
- tell me about nvidia stock
uk-ua:
- я хочу знати ціну акцій для microsoft
- я хочу знати ціну акцій для гугл
- який курс акцій microsoft
- яка вартість акцій гугл
- який курс акцій кока кола

unmatched intents:
en-us:
Expand Down
Loading