Prosecution Insights
Last updated: May 29, 2026
Application No. 18/129,783

INTERFACING WITH A SKILL STORE

Non-Final OA §103
Filed
Mar 31, 2023
Priority
Dec 19, 2022 — provisional 63/433,619 +2 more
Examiner
BECKER, TYLER JUSTIN
Art Unit
2657
Tech Center
2600 — Communications
Assignee
Microsoft Technology Licensing, LLC
OA Round
3 (Non-Final)
75%
Grant Probability
Favorable
3-4
OA Rounds
0m
Est. Remaining
92%
With Interview

Examiner Intelligence

Grants 75% — above average
75%
Career Allowance Rate
15 granted / 20 resolved
+13.0% vs TC avg
Strong +16% interview lift
Without
With
+16.5%
Interview Lift
resolved cases with interview
Typical timeline
2y 7m
Avg Prosecution
11 currently pending
Career history
43
Total Applications
across all art units

Statute-Specific Performance

§101
1.2%
-38.8% vs TC avg
§103
90.4%
+50.4% vs TC avg
§102
3.6%
-36.4% vs TC avg
§112
4.8%
-35.2% vs TC avg
Black line = Tech Center average estimate • Based on career data from 20 resolved cases

Office Action

§103
DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Continued Examination Under 37 CFR 1.114 A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on January 26th, 2026 has been entered. Response to Amendment The amendment filed January 26th, 2026 has been entered. Claims 1, 4, 5, 8, 11, and 20 have been amended. Claims 2, 3, and 12 have been cancelled. Claims 1, 4-11, and 13-20 are pending and have been examined. Applicant’s amendments to the claims have overcome all objections previously set forth. Response to Arguments Applicant’s arguments with respect to claim(s) 1-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim(s) 1 and 7-10 is/are rejected under 35 U.S.C. 103 as being unpatentable over Yang et al. (US Pat. Pub. No. 2021/0109769 A1 hereinafter Yang), in view of Mielke et al. (US Pat. Pub. No. 2023/0135179 A1 hereinafter Mielke) and Wareus et al. (US Pat. Pub. No. 2024/0168728 A1 hereinafter Wareus). Regarding claim 1, Yang discloses a method for interfacing with a skill store, the method comprising: processing, using a generative large model (GLM) (Yang, [0034]: " In other examples, the language model may be a more sophisticated model (e.g., a semantic parsing model, a topic detection model, a hidden Markov model, a maximum entropy Markov model, a conditional random field model, a support vector machine model, a decision tree model, a deep neural network model, a general sequence-to-sequence model, a conditional probability recurrent neural network model, a transformer network model, a generative model, a recurrent neural network for feature extractors model, a long short-term memory model, a GRU model, a deep neural network model for word-by-word classification, a latent variable graphical model, etc.)."), a natural language prompt comprising context information of a task to orchestrate skills needed for performing the task, wherein the orchestrated skills comprise a chain of skills collectively representing the task, and a skill comprises a machine-executable instruction, that, when executed by a processor, performs operations of the skill (Yang, [0020]: "As used herein a “computing service skill” or a “skill” may comprise one or more operations that are executed via an add-in or extension associated with a non-native, remote, and/or third-party application and service. “Computing service skill” or “skill” may additionally or alternatively comprise one or more operations that are executed via one or more connectors to obtain search results from a non-native, remote, and/or third-party application and service."); automatically generating, using the GLM, based on the context information of the task, a description of at least one skill (Yang, [0023]: "One or more natural language processing models that have been trained to identify whether there is a task intent associated with a natural language input may be applied to the received natural language input. In some examples, a natural language input must meet a threshold likelihood of including a task intent prior to the intent service performing additional processing on the natural language input. In some examples, if a natural language input is determined to include a task intent, a natural language processing model (the same or a different model as just discussed above) may identify a type of task intent associated with the natural language input (e.g., identify object, identify and insert object, perform action A, etc.). In some examples, a single task intent may be identified in a natural language input. In other examples, a plurality of task intents may be identified in a natural language input. "); determining that at least one skill in the orchestrated skills is not available to the GLM, wherein the determining that at least one skill in the orchestrated skills is not available to the GLM comprises determining that the at least one skill in the orchestrated skills does not correspond to one or more local skills stored on a local device (Yang, [0027]: "In some examples, if the add-in is not already installed on the client device where the natural language input was initially received, the add-in may be automatically obtained from an add-in store and installed by the client device."); transmitting a request for the at least one skill to a remote skill store, wherein the request comprises the automatically generated description of the at least one skill; receiving, from the remote skill store, a remote skill in response to the transmitted request, wherein the remote skill has been selected based on the description (Yang, [0027]: "In some examples, if the add-in is not already installed on the client device where the natural language input was initially received, the add-in may be automatically obtained from an add-in store and installed by the client device."); and performing, using the GLM, the task by executing a machine-executable instruction of the remote skill as a part of executing the orchestrated skills (Yang, [0027]: "The computing service skill corresponding to that add-in may then be automatically performed via execution of the add-in."). However, Yang fails to expressly recite wherein the description comprises data in embeddings form; and wherein the determining that at least one skill in the orchestrated skills is not available to the GLM comprises determining that the at least one skill in the orchestrated skills does not correspond to one or more local skills stored on a local device, based at least in part on respective similarity values between the embeddings form and the one or more local skills. Mielke teaches wherein the description comprises data in embeddings form (Mielke, [0091]: “The intent classifier 336b may take the user input as input and formulate it into a vector. The intent classifier 336b may then calculate probabilities of the user input being associated with different predefined intents based on a vector comparison between the vector representing the user input and the vectors representing different predefined intents. In a similar manner, the slot tagger 338b may take the user input as input and formulate each word into a vector. The slot tagger 338b may then calculate probabilities of each word being associated with different predefined slots based on a vector comparison between the vector representing the word and the vectors representing different predefined slots. The intent of the user may be classified as “changing money”. The slots of the user input may comprise “500”, “dollars”, “account”, and “Japanese yen”. The meta-intent of the user may be classified as “financial service”. The meta slot may comprise “finance”.”; Here, the intents are viewed as a short description, and the slots are viewed as a long description, since they add more detail to the intent.). Yang and Mielke are analogous arts because they both belong to the same field of smart assistant systems. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the extensible skills framework of Yang to incorporate the teachings of Mielke to generating descriptions in embeddings form. This allows the system to compare the generated descriptions with other descriptions (Mielke, [0091]). This helps ensure that the best match is found when searching for a new skill. However, Yang, in view of Mielke, fails to expressly recite wherein the determining that at least one skill in the orchestrated skills is not available to the GLM comprises determining that the at least one skill in the orchestrated skills does not correspond to one or more local skills stored on a local device, based at least in part on respective similarity values between the embeddings form and the one or more local skills. Wareus teaches wherein the determining that at least one skill in the orchestrated skills is not available to the GLM comprises determining that the at least one skill in the orchestrated skills does not correspond to one or more local skills stored on a local device, based at least in part on respective similarity values between the embeddings form and the one or more local skills (Wareus, [0038]: “A natural language query 402 is received (404), which specifies or describes the desired code block to be identified.; [0039]: “A query embedding 406 for the query 402 is generated (408). The query embedding 406 is generated in the same manner in which the documentation string embeddings 112 were generated from respective document strings 106 for a software package 102 when populating the database in the process of FIG. 1. The embedding 406 may thus be a vectorized representation of the query 402, and therefore may be a vector of the natural language of the query 402 to encode the query 402 as a vector.”; [0042]: “A distance score 502 between the query embedding 406 and the software package embedding 124 of each software package 102 is generated (504). Similarly, the distance scores 506 between the query embedding 406 and the functionality embeddings 120 of the functionality clusters 118 of each software package 102 are respectively generated (508). The distance score 502 between the query embedding 406 and a software package embedding 124 (or a functionality embedding 120) may be calculated by applying a cosine similarity score function to the vectors of the embeddings 406 and 124 (or 120).”; here, the query is seen as a description of at least one skill, and the software packages are seen as local skills.). Yang, Mielke, and Wareus are analogous arts because they each belong to the same field of language processing. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the extensible skills framework of Yang, as modified by the smart assistant systems of Mielke, to incorporate the teachings of Wareus to identify relevant skills based on similarity values between embeddings. When many skills are available, this searching method helps identify skills efficiently (Wareus, [0009]). This ensures the system can run in a quick, resource efficient, manner. Regarding claim 7, the rejection of claim 1 is incorporated. Yang, in view of Mielke and Wareus, discloses all of the elements of the current invention as stated above. Yang further discloses wherein the task is processed using the GLM, wherein the GLM uses the remote skill to perform the task (Yang, [0027]: "The computing service skill corresponding to that add-in may then be automatically performed via execution of the add-in."; [0034]: " In other examples, the language model may be a more sophisticated model (e.g., a semantic parsing model, a topic detection model, a hidden Markov model, a maximum entropy Markov model, a conditional random field model, a support vector machine model, a decision tree model, a deep neural network model, a general sequence-to-sequence model, a conditional probability recurrent neural network model, a transformer network model, a generative model, a recurrent neural network for feature extractors model, a long short-term memory model, a GRU model, a deep neural network model for word-by-word classification, a latent variable graphical model, etc.)."). Regarding claim 8, the rejection of claim 1 is incorporated. Yang, in view of Mielke and Wareus, teaches all of the elements of the current invention as stated above. Mielke further teaches wherein one or more skills of the orchestrated skills are stored on the local device, and wherein the one or more skills stored on the local device are stored in one of a public skill store or a private skill store (Mielke, [0341]: "Privacy settings associated with an object may specify any suitable granularity of permitted access or denial of access. As an example and not by way of limitation, access or denial of access may be specified for particular users (e.g., only me, my roommates, my boss), users within a particular degree-of-separation (e.g., friends, friends-of-friends), user groups (e.g., the gaming club, my family), user networks (e.g., employees of particular employers, students or alumni of particular university), all users (“public”), no users (“private”), users of third-party systems 170, particular applications (e.g., third-party applications, external websites), other suitable entities, or any suitable combination thereof."). Yang and Mielke are analogous arts because they both belong to the same field of smart assistant systems. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the extensible skills framework of Yang to incorporate the teachings of Mielke to include multiple databases with different owners and policies. This allows different databases to be accessed by different people based on varying permissions (Mielke, [0341]). This ensures that private data is protected, while public data remains available to many users. Regarding claim 9, the rejection of claim 1 is incorporated. Yang, in view of Mielke and Wareus, discloses all of the elements of the current invention as stated above. Yang further discloses wherein one or more of the plurality of skills comprise machine-executable instructions, and wherein the performing the task comprises: adapting one or more devices to execute the machine-executable instructions (Yang, [0006]: "In examples where an add-in corresponding to a selected skill is not already installed on a client device where the natural language input is located, the client device may surface a suggestion to install the add-in, or automatically obtain that add-in from an add-in store and install it."). Regarding claim 10, the rejection of claim 1 is incorporated. Yang, in view of Mielke and Wareus, discloses all of the elements of the current invention as stated above. Yang further discloses prior to performing the task, providing a notification to a user corresponding to the remote skill and receiving feedback from the user, in response to the notification, validating the remote skill (Yang, [0037]: "the intent service causes selectable option 108, which states: “Insert your sales graph?” to be displayed in association with natural language input 106. A user has selected that selectable option, which causes the corresponding computing service skill and/or application add-in to be executed."). Claim(s) 4-6 is/are rejected under 35 U.S.C. 103 as being unpatentable over Yang, in view of Mielke and Wareus, as applied to claims 1 and 7-10 above, and further in view of Kockerbeck et al. (U.S. Pat. No. 10,950,231 B1 hereinafter Kockerbeck). Regarding claim 4, the rejection of claim 1 is incorporated. Yang, in view of Mielke, and Wareus, teaches all of the elements of the current invention as stated above. However, Yang, in view of Mielke and Wareus, fails to expressly recite wherein the receiving the remote skill comprises performing an introspection on the remote skill, based on the description, to generate a confidence threshold corresponding to the remote skill and the task. Kockerbeck teaches wherein the receiving the remote skill comprises performing an introspection on the remote skill, based on the description, to generate a confidence threshold corresponding to the remote skill and the task (Kockerbeck, Col. 5, lines 11-14: "The database search may return a list of skill names. Each skill name may be associated with a confidence value representing a likelihood that the respective skill should be invoked with respect to the NLU results data."; Col. 5, lines 18-22: "If the server(s) 120 determines only one of the skill names is associated with a confidence value satisfying a condition (e.g., satisfying a threshold confidence value), the server(s) 120 may invoke the skill, associated with the skill name, to execute with respect to the NLU results data."). Yang, Mielke, Wareus, and Kockerbeck are analogous arts because they all belong to the same field of language processing. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the extensible skills framework of Yang, as modified by the smart assistant systems of Mielke and the code block identification method of Wareus, to incorporate the teachings of Kockerbeck to use search for skills based off of comparing them. Using Knocker beck’s search method helps narrow down search results when numerous skills are similar and can accomplish the same task (Kockerbeck, Col. 2, lines 12-38). This helps ensure that the best skill is chosen to accomplish a given task. Regarding claim 5, the rejection of claim 1 is incorporated. Yang, in view of Mielke, and Wareus, teaches all of the elements of the current invention as stated above. However, Yang, in view of Mielke and Wareus, fails to expressly recite wherein the description is a short description, wherein the transmitting an indication corresponding to the at least one skill to a remote skill store further comprises generating a long description of the at least one skill, and wherein the receiving the remote skill comprises receiving the remote skill based on the generated long description and the generated short description of the at least one skill. Kockerbeck teaches wherein the description is a short description (Kockerbeck, Col. 5, lines 7-10: "The server(s) 120 may perform a database search, of a database including skill names, to identify one or more skills configured to be invoked with respect to the NLU results data."), wherein the transmitting an indication corresponding to the at least one skill to a remote skill store further comprises generating a long description of the at least one skill (Col. 5, lines 22-28: " If the server(s) 120 determines none of the skill names are associated with confidence values that satisfying the condition, or if multiple skill names are associated with confidence values satisfying the condition, the server(s) 120 may identify (144) an offline-generated category for each skill (e.g., such as the categories illustrated in FIG. 2)."; Here, the skill categories are seen as a long description.), and wherein the receiving the remote skill comprises receiving the remote skill based on the generated long description and the generated short description of the at least one skill (Kockerbeck, Col. 5, lines 29-30: "The server(s) 120 selects (146) a skill to invoke based on the offline-generated categories."). Yang, Mielke, Wareus, and Kockerbeck are analogous arts because they all belong to the same field of language processing. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the extensible skills framework of Yang, as modified by the smart assistant systems of Mielke and the code block identification method of Wareus, to incorporate the teachings of Kockerbeck to use search for skills based off of comparing them. Using Knocker beck’s search method helps narrow down search results when numerous skills are similar and can accomplish the same task (Kockerbeck, Col. 2, lines 12-38). This helps ensure that the best skill is chosen to accomplish a given task. Regarding claim 6, the rejection of claim 5 is incorporated. Yang, in view of Mielke, Wareus, and Kockerbeck, teaches all of the elements of the current invention as stated above. Kockerbeck further teaches wherein the generated long description and the generated short description comprise natural language or an intermediate language (Kockerbeck, Col. 5, lines 7-10: "The server(s) 120 may perform a database search, of a database including skill names, to identify one or more skills configured to be invoked with respect to the NLU results data.). Claim(s) 11, 15-17, and 19-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kockerbeck, in view of Yang, Mielke, and Wareus. Regarding claim 11, Kockerbeck discloses a method for interfacing with a skill store, the method comprising (Kockerbeck, Col. 5, lines 5-10: "The server(s) 120 determines (142) more than one skill is capable of being invoked with respect to the NLU results data. The server(s) 120 may perform a database search, of a database including skill names, to identify one or more skills configured to be invoked with respect to the NLU results data."): retrieving information about a subset of skills from the skill store based on the short description of the skill, wherein the retrieving the subset of skills comprises (Kockerbeck, Col. 5, line 11: "The database search may return a list of skill names."): determining a respective similarity between the parameter and each skill stored within the skill store, based on the short description (Kockerbeck, Col. 5, lines 11-17: "Each skill name may be associated with a confidence value representing a likelihood that the respective skill should be invoked with respect to the NLU results data. Such confidence value may be represented as a numeric value (e.g., on a scale of 0-10, 0-100, 0-1000, or some other scale) or as a binned value (e.g., high, medium, or low)."); comparing the one or more of the similarities to a predetermined threshold; and retrieving, based on the comparing, the information about the subset of skills from the skill store according to the short description (Kockerbeck, Col. 5, lines 18-28: "If the server(s) 120 determines only one of the skill names is associated with a confidence value satisfying a condition (e.g., satisfying a threshold confidence value), the server(s) 120 may invoke the skill, associated with the skill name, to execute with respect to the NLU results data. If the server(s) 120 determines none of the skill names are associated with confidence values that satisfying the condition, or if multiple skill names are associated with confidence values satisfying the condition, the server(s) 120 may identify (144) an offline-generated category for each skill (e.g., such as the categories illustrated in FIG. 2)."); retrieving a skill from the subset of skills, based on the long description (Kockerbeck, Col. 5, lines 29-30: "The server(s) 120 selects (146) a skill to invoke based on the offline-generated categories."). However, Kockerbeck fails to expressly recite receiving at a skill store, from a local device, a request for a skill, wherein the request comprises a parameter for the skill store, wherein the parameter comprises a description of the skill, the skill comprising a machine-executable instruction that, when executed by a processor, performs operations of the skill, and the description comprises a short description and a long description respectively further comprising data in embeddings form as having been automatically generated using a generative large model; wherein the similarity is an embedding similarity value between the skill and the short description; and transmitting the skill to the local device for execution. Yang discloses receiving at a skill store, from a local device, a request for a skill, wherein the request comprises a parameter for the skill store, wherein the parameter comprises a description of the skill, the skill comprising a machine-executable instruction that, when executed by a processor, performs operations of the skill (Yang, [0023]: "if a natural language input is determined to include a task intent, a natural language processing model (the same or a different model as just discussed above) may identify a type of task intent associated with the natural language input (e.g., identify object, identify and insert object, perform action A, etc.). In some examples, a single task intent may be identified in a natural language input. In other examples, a plurality of task intents may be identified in a natural language input. According to additional examples, one or more key entities and/or key values may be extracted from a natural language input. The key entities and/or key values may be utilized to further define a requirement of the skill. For example, while the task intent type for the natural language input “insert a chart of 2010 sales data” may be “insert chart”, key entities and/or key values of “2010” and “sales data” may be extracted such that the skill can return a relevant result via a skill corresponding to the task intent type."; [0028]: " Processing costs (i.e., CPU cycles) associated with performing manual searches of add-in stores to identify add-ins that are relevant to users' electronic tasks are significantly reduced by the mechanisms described herein via automatic identification of task intents in natural language inputs and subsequent identification of relevant add-ins, computing service skills, and/or objects related to those computing service skills."); and transmitting the skill to the local device for execution (Yang, [0006]: "In examples where an add-in corresponding to a selected skill is not already installed on a client device where the natural language input is located, the client device may surface a suggestion to install the add-in, or automatically obtain that add-in from an add-in store and install it."). Kockerbeck and Yang are analogous arts because they both belong to the same field of smart assistant systems. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck to incorporate the teachings of Yang request a missing skill using a description of that skill. This allows the system to install new skills that it may need (Yang, [0006]). This allows the system to be more flexible in its tasks. However, Yang fails to expressly recite the description comprises a short description and a long description respectively further comprising data in embeddings form as having been automatically generated using a generative large model; and wherein the similarity is an embedding similarity value between the skill and the short description. Mielke teaches the description comprises a short description and a long description respectively further comprising data in embeddings form as having been automatically generated using a generative large model (Mielke, [0091]: “The intent classifier 336b may take the user input as input and formulate it into a vector. The intent classifier 336b may then calculate probabilities of the user input being associated with different predefined intents based on a vector comparison between the vector representing the user input and the vectors representing different predefined intents. In a similar manner, the slot tagger 338b may take the user input as input and formulate each word into a vector. The slot tagger 338b may then calculate probabilities of each word being associated with different predefined slots based on a vector comparison between the vector representing the word and the vectors representing different predefined slots. The intent of the user may be classified as “changing money”. The slots of the user input may comprise “500”, “dollars”, “account”, and “Japanese yen”. The meta-intent of the user may be classified as “financial service”. The meta slot may comprise “finance”.”; Here, the intents are viewed as a short description, and the slots are viewed as a long description, since they add more detail to the intent.). Kockerbeck, Yang, and Mielke are analogous arts because they all belong to the same field of smart assistant systems. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck, as modified by the extensible skills framework of Yang, to incorporate the teachings of Mielke to generating descriptions in embeddings form. This allows the system to compare the generated descriptions with other descriptions (Mielke, [0091]). This helps ensure that the best match is found when searching for a new skill. However, Kockerbeck, in view of Yang and Mielke, fails to expressly recite wherein the similarity is an embedding similarity value between the skill and the short description. Wareus teaches wherein the similarity is an embedding similarity value between the skill and the short description (Wareus, [0038]: “A natural language query 402 is received (404), which specifies or describes the desired code block to be identified.; [0039]: “A query embedding 406 for the query 402 is generated (408). The query embedding 406 is generated in the same manner in which the documentation string embeddings 112 were generated from respective document strings 106 for a software package 102 when populating the database in the process of FIG. 1. The embedding 406 may thus be a vectorized representation of the query 402, and therefore may be a vector of the natural language of the query 402 to encode the query 402 as a vector.”; [0042]: “A distance score 502 between the query embedding 406 and the software package embedding 124 of each software package 102 is generated (504). Similarly, the distance scores 506 between the query embedding 406 and the functionality embeddings 120 of the functionality clusters 118 of each software package 102 are respectively generated (508). The distance score 502 between the query embedding 406 and a software package embedding 124 (or a functionality embedding 120) may be calculated by applying a cosine similarity score function to the vectors of the embeddings 406 and 124 (or 120).”; here, the query is seen as a description of at least one skill, and the software packages are seen as local skills.). Kockerbeck, Yang, Mielke, and Wareus are analogous arts because they each belong to the same field of language processing. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck, as modified by the extensible skills framework of Yang and the smart assistant systems of Mielke, to incorporate the teachings of Wareus to identify relevant skills based on similarity values between embeddings. When many skills are available, this searching method helps identify skills efficiently (Wareus, [0009]). This ensures the system can run in a quick, resource efficient, manner. Regarding claim 15, the rejection of claim 11 is incorporated. Kockerbeck, in view of Yang, Mielke, and Wareus, discloses all of the elements of the current invention as stated above. Mielke further teaches wherein the skill store is one of a plurality of skill stores that are segregated by tenants (Mielke, [0341]: "Privacy settings associated with an object may specify any suitable granularity of permitted access or denial of access. As an example and not by way of limitation, access or denial of access may be specified for particular users (e.g., only me, my roommates, my boss), users within a particular degree-of-separation (e.g., friends, friends-of-friends), user groups (e.g., the gaming club, my family), user networks (e.g., employees of particular employers, students or alumni of particular university), all users (“public”), no users (“private”), users of third-party systems 170, particular applications (e.g., third-party applications, external websites), other suitable entities, or any suitable combination thereof."). Kockerbeck, Yang, and Mielke are analogous arts because they all belong to the same field of smart assistant systems. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck, as modified by the extensible skills framework of Yang, to incorporate the teachings of Mielke to include multiple databases with different owners and policies. This allows different databases to be accessed by different people based on varying permissions (Mielke, [0341]). This ensures that private data is protected, while public data remains available to many users. Regarding claim 16, the rejection of claim 11 is incorporated. Kockerbeck, in view of Yang, Mielke, and Wareus, discloses all of the elements of the current invention as stated above. Mielke further teaches wherein the skill store is one of a plurality of skill stores that comprises a private skill store and a public skill store (Mielke, [0341]: "Privacy settings associated with an object may specify any suitable granularity of permitted access or denial of access. As an example and not by way of limitation, access or denial of access may be specified for particular users (e.g., only me, my roommates, my boss), users within a particular degree-of-separation (e.g., friends, friends-of-friends), user groups (e.g., the gaming club, my family), user networks (e.g., employees of particular employers, students or alumni of particular university), all users (“public”), no users (“private”), users of third-party systems 170, particular applications (e.g., third-party applications, external websites), other suitable entities, or any suitable combination thereof."). The same motivation for claim 15 applies equally to claim 16. Regarding claim 17, the rejection of claim 11 is incorporated. Kockerbeck, in view of Yang, Mielke, and Wareus, discloses all of the elements of the current invention as stated above. Kockerbeck further discloses wherein the skill store comprises a skill description, for one or more skills of the skills stored therein, generated by a large language model (LLM) (Kockerbeck, Col. 8, lines 57-61: "The skill categorization component 340 may also consider package size in categorizing a skill. A skill developer may provide a file(s) that the system uses to define the skill. The file may include, for example, a title, description, keywords, sample utterances for invoking the skill, etc."), and wherein the respective similarity is determined based at least in part on the skill description (Kockerbeck, Col. 5, lines 29-30: "The server(s) 120 selects (146) a skill to invoke based on the offline-generated categories."). Regarding claim 19, the rejection of claim 11 is incorporated. Kockerbeck, in view of Yang, Mielke, and Wareus, discloses all of the elements of the current invention as stated above. Kockerbeck further discloses wherein the predetermined threshold is a first predetermined threshold (Kockerbeck, Col. 5, lines 18-22: "If the server(s) 120 determines only one of the skill names is associated with a confidence value satisfying a condition (e.g., satisfying a threshold confidence value), the server(s) 120 may invoke the skill, associated with the skill name, to execute with respect to the NLU results data."), and wherein the retrieving the skill from the subset of skills, based on the long description comprises: determining a respective similarity between the parameter and each skill of the subset of skills, based on the long description (Kockerbeck, Col. 5, lines 18-28: "If the server(s) 120 determines only one of the skill names is associated with a confidence value satisfying a condition (e.g., satisfying a threshold confidence value), the server(s) 120 may invoke the skill, associated with the skill name, to execute with respect to the NLU results data. If the server(s) 120 determines none of the skill names are associated with confidence values that satisfying the condition, or if multiple skill names are associated with confidence values satisfying the condition, the server(s) 120 may identify (144) an offline-generated category for each skill (e.g., such as the categories illustrated in FIG. 2)."); comparing the one or more of the similarities to a second predetermined threshold or ranking the one or more of the similarities (Kockerbeck, Col. 7, lines 6-11: "The skill categorization component 340 ranks skills based on received skill event data 315, curation data 325, skill usage data 335, and/or other data (e.g., whether a skill asks for a personal identification number, whether the skill's content changes rapidly, etc.)."); and retrieving the skill, based on the comparing or ranking, thereby retrieving the skill from the subset of skills that is determined to be related to the long description (Kockerbeck, Col. 5, lines 29-30: "The server(s) 120 selects (146) a skill to invoke based on the offline-generated categories."). Regarding claim 20, Kockerbeck discloses a system for interfacing with a skill store, the system comprising (Kockerbeck, Col. 5, lines 5-10: "The server(s) 120 determines (142) more than one skill is capable of being invoked with respect to the NLU results data. The server(s) 120 may perform a database search, of a database including skill names, to identify one or more skills configured to be invoked with respect to the NLU results data."): a processor; and memory storing instructions that, when executed by the processor, cause the system to perform a set of operations (Kockerbeck, Col. 18, lines 50-53: “The components of the device(s) 110, the server(s) 120, or the skill server(s) 425 may include their own dedicated processors, memory, and/or storage.”), the set of operations comprising: retrieving information about a subset of skills from the skill store based on the description of the skill, wherein the retrieving the subset of skills comprises (Kockerbeck, Col. 5, line 11: "The database search may return a list of skill names."): determining a respective semantic similarity between the parameter and each skill stored within the skill store, based on the description (Kockerbeck, Col. 5, lines 11-17: "Each skill name may be associated with a confidence value representing a likelihood that the respective skill should be invoked with respect to the NLU results data. Such confidence value may be represented as a numeric value (e.g., on a scale of 0-10, 0-100, 0-1000, or some other scale) or as a binned value (e.g., high, medium, or low)."); matching the parameter to at least one skill within the skill store based on the determined semantic similarities; retrieving, based on the matching, the information about the subset of skills from the skill store according to the description based on semantic similarity (Kockerbeck, Col. 5, lines 18-28: "If the server(s) 120 determines only one of the skill names is associated with a confidence value satisfying a condition (e.g., satisfying a threshold confidence value), the server(s) 120 may invoke the skill, associated with the skill name, to execute with respect to the NLU results data. If the server(s) 120 determines none of the skill names are associated with confidence values that satisfying the condition, or if multiple skill names are associated with confidence values satisfying the condition, the server(s) 120 may identify (144) an offline-generated category for each skill (e.g., such as the categories illustrated in FIG. 2)."). However, Kockerbeck fails to expressly recite receiving at a skill store, from a local device, a request for a skill, wherein the request comprises a parameter for the skill store, wherein the parameter comprises a description of the skill, the skill comprising a machine- executable instruction that, when executed by a processor, performs operations of the skill, and the description comprises data in embeddings form as having been automatically generated using a generative largen model; and transmitting the subset of skills to the local device for execution. Yang teaches receiving at a skill store, from a local device, a request for a skill, wherein the request comprises a parameter for the skill store, wherein the parameter comprises a description of the skill, the skill comprising a machine- executable instruction that, when executed by a processor, performs operations of the skill (Yang, [0023]: "if a natural language input is determined to include a task intent, a natural language processing model (the same or a different model as just discussed above) may identify a type of task intent associated with the natural language input (e.g., identify object, identify and insert object, perform action A, etc.). In some examples, a single task intent may be identified in a natural language input. In other examples, a plurality of task intents may be identified in a natural language input. According to additional examples, one or more key entities and/or key values may be extracted from a natural language input. The key entities and/or key values may be utilized to further define a requirement of the skill. For example, while the task intent type for the natural language input “insert a chart of 2010 sales data” may be “insert chart”, key entities and/or key values of “2010” and “sales data” may be extracted such that the skill can return a relevant result via a skill corresponding to the task intent type."; [0028]: " Processing costs (i.e., CPU cycles) associated with performing manual searches of add-in stores to identify add-ins that are relevant to users' electronic tasks are significantly reduced by the mechanisms described herein via automatic identification of task intents in natural language inputs and subsequent identification of relevant add-ins, computing service skills, and/or objects related to those computing service skills."); and transmitting the subset of skills to the local device for execution (Yang, [0006]: "In examples where an add-in corresponding to a selected skill is not already installed on a client device where the natural language input is located, the client device may surface a suggestion to install the add-in, or automatically obtain that add-in from an add-in store and install it."). Kockerbeck and Yang are analogous arts because they both belong to the same field of smart assistant systems. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck to incorporate the teachings of Yang request a missing skill using a description of that skill. This allows the system to install new skills that it may need (Yang, [0006]). This allows the system to be more flexible in its tasks. However, Yang fails to expressly recite the description comprises data in embeddings form as having been automatically generated using a generative largen model. Mielke teaches the description comprises data in embeddings form as having been automatically generated using a generative large model (Mielke, [0091]: “The intent classifier 336b may take the user input as input and formulate it into a vector. The intent classifier 336b may then calculate probabilities of the user input being associated with different predefined intents based on a vector comparison between the vector representing the user input and the vectors representing different predefined intents. In a similar manner, the slot tagger 338b may take the user input as input and formulate each word into a vector. The slot tagger 338b may then calculate probabilities of each word being associated with different predefined slots based on a vector comparison between the vector representing the word and the vectors representing different predefined slots. The intent of the user may be classified as “changing money”. The slots of the user input may comprise “500”, “dollars”, “account”, and “Japanese yen”. The meta-intent of the user may be classified as “financial service”. The meta slot may comprise “finance”.”; Here, the intents are viewed as a short description, and the slots are viewed as a long description, since they add more detail to the intent.). Kockerbeck, Yang, and Mielke are analogous arts because they all belong to the same field of smart assistant systems. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck, as modified by the extensible skills framework of Yang, to incorporate the teachings of Mielke to generating descriptions in embeddings form. This allows the system to compare the generated descriptions with other descriptions (Mielke, [0091]). This helps ensure that the best match is found when searching for a new skill. However, Kockerbeck, in view of Yang and Mielke, fails to expressly recite wherein the similarity is an embedding similarity value between the skill and the short description. Wareus teaches wherein the similarity is an embedding similarity value between the skill and the description (Wareus, [0038]: “A natural language query 402 is received (404), which specifies or describes the desired code block to be identified.; [0039]: “A query embedding 406 for the query 402 is generated (408). The query embedding 406 is generated in the same manner in which the documentation string embeddings 112 were generated from respective document strings 106 for a software package 102 when populating the database in the process of FIG. 1. The embedding 406 may thus be a vectorized representation of the query 402, and therefore may be a vector of the natural language of the query 402 to encode the query 402 as a vector.”; [0042]: “A distance score 502 between the query embedding 406 and the software package embedding 124 of each software package 102 is generated (504). Similarly, the distance scores 506 between the query embedding 406 and the functionality embeddings 120 of the functionality clusters 118 of each software package 102 are respectively generated (508). The distance score 502 between the query embedding 406 and a software package embedding 124 (or a functionality embedding 120) may be calculated by applying a cosine similarity score function to the vectors of the embeddings 406 and 124 (or 120).”; here, the query is seen as a description of at least one skill, and the software packages are seen as local skills.). Kockerbeck, Yang, Mielke, and Wareus are analogous arts because they each belong to the same field of language processing. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck, as modified by the extensible skills framework of Yang and the smart assistant systems of Mielke, to incorporate the teachings of Wareus to identify relevant skills based on similarity values between embeddings. When many skills are available, this searching method helps identify skills efficiently (Wareus, [0009]). This ensures the system can run in a quick, resource efficient, manner. Claim(s) 13-14 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kockerbeck, in view of Yang, Mielke, and Wareus, as applied to claims 11, 15-17, and 19-20 above, and further in view of Winter et al. (U.S. Pat. Pub. No. 2014/0040262 B1 hereinafter Winter). Regarding claim 13, the rejection of claim 11 is incorporated. Kockerbeck, in view of Yang, Mielke, and Wareus, discloses all of the elements of the current invention as stated above. However, Kockerbeck, in view of Yang, Mielke, and Wareus, fails to expressly recite wherein the skill store comprises one or more of a vector representation, hierarchical representation, or graph of skills stored therein. Winter teaches wherein the skill store comprises one or more of a vector representation, hierarchical representation, or graph of skills stored therein (Winter, [0017]: "each digital asset is assigned a feature vector with the set of attributes or characteristics used in determining similarity being the feature space."). Kockerbeck, Yang, Mielke, Wareus, and Winter are analogous arts because they all belong to the same field of data processing. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck, as modified by the extensible skills framework of Yang, the smart assistant systems of Mielke, and the code block identification method of Wareus, to incorporate the teachings of Winter to store digital assets as vectors in a search tree. This method allows for a scalable method of conducting similarity searches of digital assets (Winter, [0017]). This allows for more efficient searching of assets, which makes for a better running system. Regarding claim 14, the rejection of claim 13 is incorporated. Kockerbeck, in view of Yang, Mielke, Wareus, and Winter, discloses all of the elements of the current invention as stated above. Winter further teaches wherein the skill store comprises the vector representation of skills stored therein (Winter, [0017]: "each digital asset is assigned a feature vector with the set of attributes or characteristics used in determining similarity being the feature space."), and wherein the vector representation is stored in at least one of an approximate nearest neighbor (ANN) tree, a k-d tree, or a multidimensional tree (Winter, [0017]: "In addition and as described in greater detail below, a hierarchical tree-like data structure, referred to herein generally as a search tree data structure, which in some embodiments is implemented with a graph database, is used to manage or organize the digital assets, such that digital assets that are deemed to be most similar (e.g., based on a derived measure of distance between the assets, where the distance measure is determined based on the asset's respective feature vector) are assigned to common leaf nodes in the search tree data structure."). The same motivation for claim 13 applies equally to claim 14. Claim(s) 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kockerbeck, in view of Yang, Mielke, and Wareus, as applied to claims 11, 15-17, 19-20 above, and further in view of Winter and Okereke et al. (U.S. Pat. Pub. No. 2016/0070911 A1 hereinafter Okereke). Regarding claim 18, the rejection of claim 11 is incorporated. Kockerbeck, in view of Yang, Mielke, Wareus, discloses all of the elements of the current invention as stated above. However, Kockerbeck, in view of Yang, Mielke, and Wareus, fails to expressly recite further comprising: receiving a new skill to be stored in the skill store; validating the new skill against a security protocol; and updating the skill store to include the new skill. Winter teaches further comprising: receiving a new skill to be stored in the skill store; and updating the skill store to include the new skill (Winter, [0018]: "When a new digital asset (e.g., image file) is uploaded to the web-based service, a new digital asset is added to one or more search tree data structures."). Kockerbeck, Yang, Mielke, Wareus, and Winter are analogous arts because they all belong to the same field of data processing. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck, as modified by the extensible skills framework of Yang, the smart assistant systems of Mielke, and the code block identification method of Wareus, to incorporate the teachings of Winter to store digital assets as vectors in a search tree. This method allows for a scalable method of conducting similarity searches of digital assets (Winter, [0017]). This allows for more efficient searching of assets, which makes for a better running system. However, Kockerbeck, in view of Yang, Mielke, and Winter, fails to expressly recite validating the new skill against a security protocol. Okereke teaches validating the new skill against a security protocol (Okereke, [0057]: "an upload of the application 230 to data store 212 may initiate an inspection of the application 230 by the malware detection services 224."). Kockerbeck, Yang, Mielke, Wareus, Winter, and Okereke are analogous arts because they all belong to the same field of data processing. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the skill enablement system of Kockerbeck, as modified by the extensible skills framework of Yang, the smart assistant systems of Mielke, the code block identification method of Wareus, and the search method of Winter, to incorporate the teachings of Okereke to validate a program before uploading it. This allows malware detection to be run server side rather than on devices that may not have the processing power to properly validate a program (Okereke, [0002]). This ensures malware is not distributed to users accessing the program from a database. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to TYLER J BECKER whose telephone number is (703)756-1271. The examiner can normally be reached M-Th, 7:15am-5:45pm PT. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Daniel Washburn can be reached at (571) 272-5551. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /TYLER BECKER/ Examiner, Art Unit 2657 /DANIEL C WASHBURN/ Supervisory Patent Examiner, Art Unit 2657
Read full office action

Prosecution Timeline

Show 2 earlier events
Jul 08, 2025
Applicant Interview (Telephonic)
Jul 08, 2025
Examiner Interview Summary
Jul 15, 2025
Response Filed
Sep 24, 2025
Final Rejection mailed — §103
Oct 27, 2025
Interview Requested
Jan 26, 2026
Request for Continued Examination
Jan 30, 2026
Response after Non-Final Action
Mar 31, 2026
Non-Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12632657
Joint Speech and Text Streaming Model for ASR
2y 10m to grant Granted May 19, 2026
Patent 12614560
REVERBERATION REMOVAL DEVICE, PARAMETER ESTIMATION DEVICE, REVERBERATION REMOVAL METHOD, PARAMETER ESTIMATION METHOD, AND PROGRAM
2y 9m to grant Granted Apr 28, 2026
Patent 12597433
SPEECH SIGNAL ENHANCEMENT METHOD AND APPARATUS, AND ELECTRONIC DEVICE
2y 5m to grant Granted Apr 07, 2026
Patent 12585893
Full Media Translator
2y 9m to grant Granted Mar 24, 2026
Patent 12518777
SYSTEMS AND METHODS FOR AUTHENTICATION USING SOUND-BASED VOCALIZATION ANALYSIS
3y 10m to grant Granted Jan 06, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
75%
Grant Probability
92%
With Interview (+16.5%)
2y 7m (~0m remaining)
Median Time to Grant
High
PTA Risk
Based on 20 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month